Ir para conteúdo
Entre para seguir isso  
lyndell

SetPlayerExtraExpRate

Recommended Posts

lyndell    0
lyndell

Título: SetPlayerExtraExpRate

--------------------------

 

Sintaxe: setplayerextraexprate(player,exp)

Descrição: Funçao que aumenta x a rate do server somente para um player

Requerimentos: Nao sei :x

 

Olá galera, eu tava pensando em fazer a funçao setPlayerExtraExpRate (?) que existia nao lembro em que versão.

 

Começei talz, tava indo legal até só que descobri que acho que ela volto :w00t:, dorgas, fiz tudo atoa.

 

Pra nao perder vo posta aqui, no minimo pode ensinar alguem ou sei la.

 

A funçao seria só isso:

 

function setplayerextrarate(cid,qntd)

setPlayerStorageValue(cid,3211,qntd)

 

return true

end

 

Pronto, simples nao? bom agora precisa de um outro script que eu fiz que vai em creaturescripts.

 

function onKill(cid, target)

kaka = getPlayerStorageValue(cid,3211)

if kaka > 0 then

lugar = getDataDir().."/monster/monsters.xml"

nome = string.lower(getCreatureName(target))

file = io.open(lugar, 'a+')

local file2 = file:read('*a')

local normal = string.lower(file2)

file:close()

start = string.find(normal, '<monster name="'..nome..'"')

if start == nil then

return false

end

valor = string.find(normal, 'file="', start)

if valor == nil then

return false

end

final = string.find(normal, '"/>', valor + 5)

if final == nil then

return false

end

xis = valor + 6

xis2 = final - 1

total = string.sub(file2,xis,xis2)

lugar = getDataDir().."/monster/"..total

file = io.open(lugar, 'a+')

local file2 = file:read('*a')

local normal = string.lower(file2)

file:close()

start = string.find(normal, 'experience="')

if start == nil then

return false

end

meio = string.find(normal, '" speed="')

if meio == nil then

return false

end

xis = start + 12

xis2 = meio - 1

total2 = string.sub(file2,xis,xis2)

exp = tonumber(total2) * tonumber(kaka)

doPlayerAddExperience(cid,exp)

end

return TRUE

end

 

Bom, é bom vcs tambem colocarem isso no creaturescripts.xml:

 

<event type="kill" name="dead" script="dead.lua"/>

 

E adicionarem isso no final do login.lua:

 

registerCreatureEvent(cid, "dead")

 

Comentários adicionais:

 

 

É, deu pra ver que eu tive a ideia quando vi aquele script do skyen hasus do getatributte algo assim.

 

Bom, então ta aí né, ficou meio inutil, mais ta ai

 

Falous galera (Y)

Editado por lyndell

Compartilhar este post


Link para o post
Mock    32
Mock

Eu diria que você fez atoa. x.x'

mais achei OTIMO como você fez usando onkill pegando a exp na pasta data, isso eu achei muito criativo cara.

tem como vc da uma formatada melhor no topico? por as tags em quote ou code e tenta da uma tabulação no script? xP

Compartilhar este post


Link para o post
KwiiBy~    0
KwiiBy~

achei muito bem inovador muito boa sua ideia só que o topic precisa de uma formatação dizendo como funciona pra que serve e tal valeu :D

Compartilhar este post


Link para o post
Nighandy    0
Nighandy

bem criativo mesmo

Compartilhar este post


Link para o post
Mock    32
Mock

só uma coisa...

nas utimas linhas

doPlayerAddExperience(cid,exp)

doPlayerPopupFYI(cid,exp) -- WTF?

Compartilhar este post


Link para o post
lyndell    0
lyndell

/\,aah eu puis quando tava testando né, só esqueci de tirar, hehe

 

vo muda isso e ja da uma formatada no tópico.

Compartilhar este post


Link para o post
Shyzoul    0
Shyzoul

Oo'

Nem entendi pa serve,

use o padrao de postagem.. e organize o topico

seu script ta bom vlw ;)

Compartilhar este post


Link para o post
Mock    32
Mock
Oo'

Nem entendi pa serve,

use o padrao de postagem.. e organize o topico

seu script ta bom vlw ;)

 

 

se vc n entendeu pra qq serve como vc sabe que esta bom?

Compartilhar este post


Link para o post
Pivizz    1
Pivizz

aiuhaiuahaiuhaiuhaaiahiaahiuahiuhaiuhaiu

:XX

 

Bah, da pra fazer bastante coisa pegando teu script como base... É com ele que vou fazer meu pet evoluir :)

Eu não tinha pensando em nenhum modo de como pegar a experiência que o monstro que foi morto da, mas tu me salvou

Obrigado :P

Compartilhar este post


Link para o post
Mock    32
Mock

@lyndell, você tem 48h para editar o topico.

Compartilhar este post


Link para o post
lyndell    0
lyndell

Pow, você diz formatar como? :X

Compartilhar este post


Link para o post
Pivizz    1
Pivizz

Usa o padrão de postagem, tá na seção "avaliação de downloads"

Compartilhar este post


Link para o post
Mock    32
Mock

@lyndell

 

Esta mensagem é uma mensagem formatada

Formatar seria organizar, usar tamanhos e fontes que facilitem a leitura e deixem o ambiente do topico agradavel.

Compartilhar este post


Link para o post
lyndell    0
lyndell

Sim, isso eu sei, é que ao meu ver estava formatado :P

Compartilhar este post


Link para o post
Fletch    0
Fletch

da pra fazer akele bagulho do global q quando a stamina ta verde da double xp ^^

Compartilhar este post


Link para o post
lyndell    0
lyndell

Hehe, usei o "padrão de postagem", nao sei tem requerimentos, será que tem? :X

 

Só ter o OnKill não ?

 

Valeu ae

Compartilhar este post


Link para o post
Magus    2
Magus

Uma sugestão: ao invés de fazer uma leitura no arquivo do monstro, você pode usar getMonsterInfo("Nome").experience e getMonsterInfo("Nome").speed :P

Compartilhar este post


Link para o post
lyndell    0
lyndell

Sério que isso existe? -.-

 

E o speed nao se usa, você deve ta falando porque tem ali, mas na verdade ele ta pegando aonde que acaba o experience=""

Compartilhar este post


Link para o post
Mock    32
Mock

fail... nem eu saiba dessa magus ._.

Compartilhar este post


Link para o post
Vasigap    0
Vasigap

Assim como o mock falou o script em si nao é util,já que já existe....mais é sempre legal ve um mesmo script feito de maneiras diferentes....dessa sua maneira eu achei bem legal e eficiente...sem conta que da pra faze milhoes de coisas como base nessa...

parabens =]

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×