Level Up Item

08/01/2013 23:32 Ammonit#1
#
08/01/2013 23:43 artykalamata#2
Code:
function SetPlayerLevel(player)
	player:SetLevel(player:GetPlayerLevel()+1)
end
Meinst du sowas?
08/02/2013 08:56 funkybeatz15#3
Wichtig wäre erstmal der Emulator, aber wegen dem LUA tippe ich auf Arcemu, dann erstell dir ein Script für das Item und nutz artykalamatas Script von oben.
08/02/2013 16:54 Ammonit#4
ne Trinity
08/02/2013 18:56 artykalamata#5
Hab zwar gerade keine Möglichkeit zum testen aber ich glaub nicht, dass ich was vergessen habe.

Code:
class spell_lvlup : public SpellScriptLoader
{
    public:
        spell_lvlup() : SpellScriptLoader("spell_lvlup") {}

        class spell_lvlup_SpellScript : public SpellScript
        {
            PrepareSpellScript(spell_lvlup_SpellScript);

			 void HandleDummy(SpellEffIndex)
			 {
				Player* player = GetCaster()->ToPlayer();
				 
				player->GiveLevel(player->getLevel() + 1);
				player->InitTalentForLevel();

				player->GetSession()->SendNotification(LANG_YOURS_LEVEL_UP, ChatHandler(player).GetNameLink(player).c_str(), newLevel);
				ChatHandler(player).PSendSysMessage(LANG_YOURS_LEVEL_UP, ChatHandler(player).GetNameLink(player).c_str(), newLevel);
			 }

            void Register()
            {
                OnEffectHit += SpellEffectFn(spell_lvlup_SpellScript::HandleDummy, EFFECT_0, SPELL_EFFECT_DUMMY);
            }
        };

        SpellScript* GetSpellScript() const
        {
            return new spell_lvlup_SpellScript();
        }
};
08/02/2013 22:15 Ammonit#6
Quote:
Originally Posted by artykalamata View Post
Code:
function SetPlayerLevel(player)
	player:SetLevel(player:GetPlayerLevel()+1)
end
Meinst du sowas?
scheint nicht zu gehen, brauche es für Elunalua.
08/02/2013 23:27 artykalamata#7
Quote:
Originally Posted by Ammonit View Post
scheint nicht zu gehen, brauche es für Elunalua.
Du bist Witzig ich kann ja schlecht deine Gedanken lesen.

Code:
function lvlup(event, player, item)
	player:SetLevel(player:GetPlayerLevel()+1)
end

RegisterItemGossipEvent(entry, 1, "lvlup")
So in etwa sollte es gehen. "entry" noch mit der Item ID ersetzen.