Você acha que eu sou oque? um colex? ;D
Que tal explicar pra que serve.
Abraços,
Alttli.
info
Grupo: Visconde
Registrado: 06/02/07
Posts: 284
Reputação: 0

Você acha que eu sou oque? um colex? ;D
Que tal explicar pra que serve.
Abraços,
Alttli.
Você acha que eu sou oque? um colex? ;D
Que tal explicar pra que serve.
Abraços,
Alttli.
Malz! Eu tava fazendo uma action com DoplayerAddSkillTry!
eu colokei pra i negativo ai nao foi!! ai eu criei esse comando!
ou seja ele serve para actions moveevents e nao sei se serve pra talkactions!
Ele remove um determinado skill euma determinada quantidade de skill do player!
doPlayerRemovveSKill(cid,2,5)
ele remove 5 skill do skill de sword!
se vc tentar:
doPlayerAddSkillTry(cid,2,-5)
ele adiciona 1 skill no skill de sword!
Grato, Clic.
info
Grupo: Artesão
Registrado: 26/06/06
Posts: 115
Reputação: +1
Char no Tibia: Kasugol

Huhuhuhuhuh
Rox a lot!!
Porem seria melhor se tivesse tempo..
x)
Cara...acho q vc eh du XDeveloper...o0
![]()
Gratz ^^
Continue assim, ajudando o XTibia!
info
Grupo: Campones
Registrado: 27/06/07
Posts: 39
Reputação: 0

MUITO BOMMMMMMMMMMMMMMMMMMMMM!!!!!!1
info
Grupo: Campones
Registrado: 25/02/07
Posts: 84
Reputação: 0

Aprendeu em poco tempo!
Está evoluindo bastante,
Parabéns clic!
Abraços.
info
Grupo: Campones
Registrado: 04/04/07
Posts: 8
Reputação: 0
Good isso pode ser de atake de um mosnter já pensou na ocsião
VLW , bom msm, mas entendi nda xD
Flw
info
Grupo: Campones
Registrado: 06/05/06
Posts: 57
Reputação: 0
Meu primeiro code!! e ele foi muito facil de faze!! Deer Mudar sinais!!!
então vamo ao code!
Em luascript.cpp abaixo de:
Adicione abaixo:
Ainda em luascript.cpp procure por:
int LuaScriptInterface::luaDoPlayerAddSkillTry(lua_State *L) { //doPlayerAddSkillTry(uid,skillid,n) uint32_t n = popNumber(L); uint32_t skillid = popNumber(L); uint32_t cid = popNumber(L); ScriptEnviroment* env = getScriptEnv(); Player* player = env->getPlayerByUID(cid); if(player){ player->addSkillAdvance((skills_t)skillid, n); lua_pushnumber(L, LUA_NO_ERROR); } else{ reportErrorFunc(getErrorDesc(LUA_ERROR_PLAYER_NOT_FOUND)); lua_pushnumber(L, LUA_ERROR); } return 1; }Adicione abaixo:
int LuaScriptInterface::luaDoPlayerRemoveSkillTry(lua_State *L) { //doPlayerRemoveSkillTry(uid,skillid,n) uint32_t n = popNumber(L); uint32_t skillid = popNumber(L); uint32_t cid = popNumber(L); ScriptEnviroment* env = getScriptEnv(); Player* player = env->getPlayerByUID(cid); if(player){ player->removeSkill((skills_t)skillid, n); lua_pushnumber(L, LUA_NO_ERROR); } else{ reportErrorFunc(getErrorDesc(LUA_ERROR_PLAYER_NOT_FOUND)); lua_pushnumber(L, LUA_ERROR); } return 1; }Agora em luascript.h procure por:
Adicione abaixo:
agore em player.cpp procure por:
void Player::addSkillAdvance(skills_t skill, uint32_t count) { skills[skill][SKILL_TRIES] += count * g_config.getNumber(ConfigManager::RATE_SKILL); #if __DEBUG__ std::cout << getName() << ", has the vocation: " << (int)getVocationId() << " and is training his " << getSkillName(skill) << "(" << skill << "). Tries: " << skills[skill][SKILL_TRIES] << "(" << vocation->getReqSkillTries(skill, skills[skill][SKILL_LEVEL] + 1) << ")" << std::endl; std::cout << "Current skill: " << skills[skill][SKILL_LEVEL] << std::endl; #endif //Need skill up? if(skills[skill][SKILL_TRIES] >= vocation->getReqSkillTries(skill, skills[skill][SKILL_LEVEL] + 1)){ skills[skill][SKILL_LEVEL]++; skills[skill][SKILL_TRIES] = 0; skills[skill][SKILL_PERCENT] = 0; std::stringstream advMsg; advMsg << "You advanced in " << getSkillName(skill) << "."; client->sendTextMessage(MSG_EVENT_ADVANCE, advMsg.str()); client->sendSkills(); } else{ //update percent uint32_t newPercent = std::min((uint32_t)100, (100*skills[skill][SKILL_TRIES])/vocation->getReqSkillTries(skill, skills[skill][SKILL_LEVEL]+1)); if(skills[skill][SKILL_PERCENT] != newPercent){ skills[skill][SKILL_PERCENT] = newPercent; client->sendSkills(); } } }Adicione abaixo:
void Player::removeSkill(skills_t skill, uint32_t count) { skills[skill][SKILL_TRIES] -= count * g_config.getNumber(ConfigManager::RATE_SKILL); #if __DEBUG__ std::cout << getName() << ", has the vocation: " << (int)getVocationId() << " and is training his " << getSkillName(skill) << "(" << skill << "). Tries: " << skills[skill][SKILL_TRIES] << "(" << vocation->getReqSkillTries(skill, skills[skill][SKILL_LEVEL] + 1) << ")" << std::endl; std::cout << "Current skill: " << skills[skill][SKILL_LEVEL] << std::endl; #endif //Need skill up? if(skills[skill][SKILL_TRIES] >= vocation->getReqSkillTries(skill, skills[skill][SKILL_LEVEL] - 1)){ skills[skill][SKILL_LEVEL]--; skills[skill][SKILL_LEVEL] > 0; skills[skill][SKILL_TRIES] = 0; skills[skill][SKILL_PERCENT] = 0; std::stringstream advMsg; advMsg << "You come back in " << getSkillName(skill) << "."; client->sendTextMessage(MSG_EVENT_ADVANCE, advMsg.str()); client->sendSkills(); } else{ //update percent uint32_t newPercent = std::min((uint32_t)100, (100*skills[skill][SKILL_TRIES])/vocation->getReqSkillTries(skill, skills[skill][SKILL_LEVEL]-1)); if(skills[skill][SKILL_PERCENT] != newPercent){ skills[skill][SKILL_PERCENT] = newPercent; client->sendSkills(); } } }Agora em player.h procure por:
Adicione abaixo:
Poste 100 nesse topico!! espero tem um poco de sucesso nele!
Grato, Clic.
Editado Julho 11 por Clic