[System] Level Up Sys
4 participantes
Página 1 de 1
[System] Level Up Sys
Instalando:
Para instalar este sistema em seu mapa, basta criar uma trigger custom text e inserir o script disponível abaixo.
Como Funciona:
Este sistema faz com que seu herói ou heróis só recebam pontos de skills á cada dois níveis. Isto é útil para quem deseja criar mapas onde o nível máximo do herói é elevado (recomendo nível máximo 50). Pois com isso não há a necessidade de criar spells com muitos níveis, devido ao trabalho que isso dá.
Clique aqui para ver o vídeo relacionado, direto do You Tube.
Vale apena testar.
Para instalar este sistema em seu mapa, basta criar uma trigger custom text e inserir o script disponível abaixo.
Como Funciona:
Este sistema faz com que seu herói ou heróis só recebam pontos de skills á cada dois níveis. Isto é útil para quem deseja criar mapas onde o nível máximo do herói é elevado (recomendo nível máximo 50). Pois com isso não há a necessidade de criar spells com muitos níveis, devido ao trabalho que isso dá.
Clique aqui para ver o vídeo relacionado, direto do You Tube.
Vale apena testar.
- Spoiler:
//**********************************************
//*
//* Created by Pedro Fernandes
//* www.JassCraft.blogspot.com
//*
//**********************************************
scope LevelUpSys initializer init
globals
private trigger t = CreateTrigger()
private integer i = 0
private integer array lv
endglobals
private function checkModulo takes nothing returns boolean
local integer i = lv[GetPlayerId(GetOwningPlayer(GetTriggerUnit()))] - (lv[GetPlayerId(GetOwningPlayer(GetTriggerUnit()))] / 2) * 2
if i < 0 then
set i = i + 2
endif
return i == 0
endfunction
private function doAction takes nothing returns nothing
local player owner = GetOwningPlayer(GetTriggerUnit())
set lv[GetPlayerId(owner)]=GetHeroLevel(GetTriggerUnit())
if (checkModulo()) then
call UnitModifySkillPoints(GetTriggerUnit(),-1)
endif
set lv[GetPlayerId(owner)] = 0
set owner = null
endfunction
private function init takes nothing returns nothing
loop
call TriggerRegisterPlayerUnitEvent(t,Player(i),ConvertPlayerUnitEvent(41),null)
set i = i + 1
exitwhen i == 12
endloop
call TriggerAddAction(t,function doAction)
endfunction
endscope
Última edição por Pedro.Fern91 em 2013-05-27, 19:23, editado 1 vez(es)
Re: [System] Level Up Sys
Deu erro na trigger desse sistema... =/
Fou-lu- Número de Posts : 35
Data de inscrição : 17/05/2013
Reputação : 4 Pontos : 21370
Re: [System] Level Up Sys
Por favor, corrija o erro e na próxima ensine, do contrário, outros só poderiam copiar e colar, além de retirar os créditos ou edita-los, e esse não é o objetivo do Forum.
Re: [System] Level Up Sys
Curti a ideia do sistema, pena que não dê para usar no meu mapa, pois ja demarquei o nivel, as classes e suas respectivas spells. Mais eu vou estuda-la e você ganha +rep!
Mence- Número de Posts : 233
Data de inscrição : 22/07/2011
Reputação : 41 Pontos : 24882
Re: [System] Level Up Sys
Fou-lu escreveu:Deu erro na trigger desse sistema... =/
Bom, o erro pode ser ocasionado por um dos motivos abaixo:
- Não utiliza o JNGP (Jass New Generation Pack);
- Possui alguma library ou scope com o mesmo título;
- Instalação incorreta.
Para um melhor suporte segue um vídeo sobre esse sistema. Clique aqui para assistir o vídeo direto do You Tube
Re: [System] Level Up Sys
OLHAAAAA!!! EU TO NO VIDEO Õ/
eeee, oque tem de mais nesse sistema? '-'
não achei grande coisa, mas por outro lado, vocês quem sabem xD
eeee, oque tem de mais nesse sistema? '-'
não achei grande coisa, mas por outro lado, vocês quem sabem xD
Re: [System] Level Up Sys
Black.Rock.TerrO
Esse sistema poupa um trabalho muito filha da mãe que eu fazia há muito tempo atrás para que um herói receba 1 ponto de habilidade a cada 2 leveis.
Esse sistema poupa um trabalho muito filha da mãe que eu fazia há muito tempo atrás para que um herói receba 1 ponto de habilidade a cada 2 leveis.
Fou-lu- Número de Posts : 35
Data de inscrição : 17/05/2013
Reputação : 4 Pontos : 21370
Re: [System] Level Up Sys
Isso seria bastante interessante, mas por só a cada 2 níveis?
Por que não a cada 10?
poderia fazer um sistema que a cada 2 níveis ele ganha a habilidade, mas, também colocar uma coisa a mais, como opções, de que ele possa ganhar a habilidade que escolher. Isso seria bastante usado em RPG's por exemplo.
Por que não a cada 10?
poderia fazer um sistema que a cada 2 níveis ele ganha a habilidade, mas, também colocar uma coisa a mais, como opções, de que ele possa ganhar a habilidade que escolher. Isso seria bastante usado em RPG's por exemplo.
Re: [System] Level Up Sys
Bom, eu tenho esse outro aqui, ele possui um JESP com algumas opções de customização. Fiquem a vontade pra checar.
- Level Up Sys 2:
//*****************************************
//* JESP: Jass Enhanced Spell Pseudotemplate
//* ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
//* • Sistema: Level Up Sys 2
//* • Autor: Pedro Fernandes
//* • E-mail: Pedro.Fern91@Gmail.com
//* • Postado em: www.TeamKings.forumeiros.com
//*
//* Informações Básicas:
//* ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
//* Este sistema faz com que os heróis só recebam pontos de habilidade no nível definido pelo
//* usuário. Com ele também é possível controlar a quantidade de pontos ganhos pelo herói, ao
//* atingir o nível necessário.
//*
//* Customizando:
//* ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
//* • Linha 26: Informações na linha 24.
//* • Linha 31: Nível máximo permitido no mapa.
//* • Linha 36: Quantidade de pontos ganhos.
//*****************************************
scope LevelUp initializer init
// O herói receberá uma quantidade de pontos á cada nível multiplo de:
private constant function heroLevel takes nothing returns integer
return 2 // altere aqui. Ex.: return 5 (5,10,15,20,25,30...)
endfunction
// Nível máximo permitido no mapa:
private constant function maxLevel takes nothing returns integer
return 100 // altere aqui. Ex.: return 50
endfunction
// Quantidade de pontos ganhos pelo herói no nível necessário:
private constant function receivePoints takes nothing returns integer
return 1 // altere aqui. Ex.: return 3
endfunction
private function currentLevel takes unit u returns boolean
local integer lv = GetHeroLevel(u)
local integer i1 = 0
loop
set i1 = i1 + heroLevel()
if lv == i1 then
return true
endif
exitwhen i1 == maxLevel()
endloop
set u = null
set i1 = 0
set lv = 0
return false
endfunction
private function checkLevel takes nothing returns boolean
local unit u = GetTriggerUnit()
if currentLevel(u)==true then
call UnitModifySkillPoints(u,receivePoints()-1)
else
call UnitModifySkillPoints(u,-1)
endif
set u = null
return false
endfunction
private function init takes nothing returns nothing
local trigger t = CreateTrigger()
local integer i = 0
loop
call TriggerRegisterPlayerUnitEvent(t,Player(i),ConvertPlayerUnitEvent(41),null)
set i = i + 1
exitwhen i == 12
endloop
call TriggerAddCondition(t,Condition(function checkLevel))
set t = null
endfunction
endscope
Tópicos semelhantes
» Level Ability system em trigger
» [Duvida] Battle System / Combat System
» [System]WoW Hero Respawn System
» [System][Spell]Invoker System Spell
» Travando a XP do level
» [Duvida] Battle System / Combat System
» [System]WoW Hero Respawn System
» [System][Spell]Invoker System Spell
» Travando a XP do level
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos