Postado Seg maio 12, 2014 12:19 am
eae galera venho aqui trazer um código liberada pela otland então vamos deixar de blabla
encontre
em monster.h
em seguida, adicione esta sob público:
deixando assim
agora procure por
substitua por
procure por
substitua por
procure por
e substitua por
Agora em Monster.cpp
procure por
em seguida, adicione o seguinte código logo acima
deixando assim
agora em luascript.h
adicionar perto das linhas semelhantes
Luascripts.cpp
adicionar perto de linhas semelhantes
adicionar perto de linhas semelhantes
Galera Se Der Algum Erro Só Deixar Aqui Porque testei na 0.3.6 e tem uns 0.3.6 que eles da um erro básico
se der 2 erros é so substitiu por esse
em spells/naruto/bunshi so apagar o que tem dentro e colocar esse aqui
onde tem às positions vocês tem que criar uma pequena área bem distante do mapa para o clone copiar o nome espero ter ajudado
Creditos: Scarlet Ayleid Pelo código
Créditos Eu Pelo Postar aqui e pelo spells
encontre
em monster.h
- Código:
class Monster : public Creature
em seguida, adicione esta sob público:
- Código:
std::string name, nameDescription;
deixando assim
- Código:
class Monster : public Creature
{
private:
Monster(MonsterType* _mType);
public:
std::string name, nameDescription;
#ifdef __ENABLE_SERVER_DIAGNOSTIC__
static uint32_t monsterCount;
#endif
agora procure por
- Código:
virtual const std::string& getName() const {return mType->name;}
substitua por
- Código:
virtual const std::string& getName() const {return name;}
procure por
- Código:
virtual const std::string& getNameDescription() const {return mType->nameDescription;}
substitua por
- Código:
virtual const std::string& getNameDescription() const {return nameDescription;}
procure por
- Código:
virtual std::string getDescription(int32_t) const {return mType->nameDescription + ".";}
e substitua por
- Código:
virtual std::string getDescription(int32_t) const {return nameDescription + ".";}
Agora em Monster.cpp
procure por
- Código:
Monster::Monster(MonsterType* _mType):
em seguida, adicione o seguinte código logo acima
- Código:
name = _mType->name;
nameDescription = _mType->nameDescription;
deixando assim
- Código:
Monster::Monster(MonsterType* _mType):
Creature()
{
isIdle = true;
isMasterInRange = false;
teleportToMaster = false;
mType = _mType;
spawn = NULL;
raid = NULL;
name = mType->name;
nameDescription = mType->nameDescription;
defaultOutfit = mType->outfit;
currentOutfit = mType->outfit;
agora em luascript.h
adicionar perto das linhas semelhantes
- Código:
static int32_t luaSetCreatureName(lua_State* L);
Luascripts.cpp
adicionar perto de linhas semelhantes
- Código:
//setCreatureName(cid, name, description)
lua_register(m_luaState, "setCreatureName", LuaInterface::luaSetCreatureName);
adicionar perto de linhas semelhantes
- Código:
int32_t LuaInterface::luaSetCreatureName(lua_State* L)
{
//setCreatureName(cid, newName, newDescription)
std::string newDesc = popString(L);
std::string newName = popString(L);
ScriptEnviroment* env = getEnv();
Creature* creature;
if(creature = env->getCreatureByUID(popNumber(L))){
Monster* monster = (Monster*)creature;
monster->name = newName;
monster->nameDescription = newDesc;
lua_pushboolean(L, true);
}
else{
errorEx(getError(LUA_ERROR_CREATURE_NOT_FOUND));
lua_pushboolean(L, false);
}
return 1;
}
Galera Se Der Algum Erro Só Deixar Aqui Porque testei na 0.3.6 e tem uns 0.3.6 que eles da um erro básico
se der 2 erros é so substitiu por esse
- Código:
//setCreatureName(cid, name, description)
lua_register(m_luaState, "setCreatureName", LuaScriptInterface::luaSetCreatureName);
- Código:
int32_t LuaScriptInterface::luaSetCreatureName(lua_State* L)
em spells/naruto/bunshi so apagar o que tem dentro e colocar esse aqui
- Spoiler:
- function onCastSpell(cid, var)
local cloth = getCreatureOutfit(cid)
local health = getCreatureHealth(cid)
local maxhealth = getCreatureMaxHealth(cid)
local MaximoSummon = 2
local summons = getCreatureSummons(cid)
if(table.maxn(summons) < MaximoSummon) then
local pos = getPlayerPosition(cid)
local bpos = {x=pos.x+2, y = pos.y, z = pos.z}
local farAwayPos = {x = 2061, y = 2056, z = 7}
local Bunshin = doCreateMonster("Bunshin", farAwayPos)
doConvinceCreature(cid, Bunshin)
setCreatureMaxHealth(Bunshin, maxhealth)
doCreatureAddHealth(Bunshin, health)
doSetCreatureOutfit(Bunshin, cloth, -1)
setCreatureName(Bunshin, "".. getCreatureName(cid) .."", "a ".. getCreatureName(cid) .."")
addEvent(doSendMagicEffect, 300, pos, 2)
addEvent(doTeleportThing, 300, Bunshin, pos)
return TRUE
end
end
onde tem às positions vocês tem que criar uma pequena área bem distante do mapa para o clone copiar o nome espero ter ajudado
Creditos: Scarlet Ayleid Pelo código
Créditos Eu Pelo Postar aqui e pelo spells