Como muitos sabem,no E.O dá pra usar infinitas poções,umas atrás da outra,e isso é muito chato já que o cara pode estar morrendo,aí ele aperta loucamente o botão da hotbar que está a poção e usa umas 10 de uma vez. Vou ensinar como colocar um cooldown.
Server side
modTypes,TempPlayerRec,abaixo de
Coloque:
modPlayer,Sub Useitem,abaixo de ITEM_TYPE_CONSUME,adicionar.
Ainda na mesma Sub,acima de:
No lugar do 5,você pode colocar o valor que quiser para o cooldown. No meu caso foi de 5 segundos. A multiplicação por mil ( * 1000) é porque a função trabalha em milissegundos
Fim
Server side
modTypes,TempPlayerRec,abaixo de
- Código:
SpellCD(1 To MAX_PLAYER_SPELLS) As Long
Coloque:
- Código:
ConsumeCD As Long
modPlayer,Sub Useitem,abaixo de ITEM_TYPE_CONSUME,adicionar.
- Código:
'cooldown consume
If TempPlayer(index).ConsumeCD > GetTickCount Then
PlayerMsg index, "Aguarde o cooldown.", White
Exit Sub
End If
Ainda na mesma Sub,acima de:
- Código:
' add hp
If Item(itemnum).AddHP > 0 Then
Player(index).Vital(Vitals.HP) = Player(index).Vital(Vitals.HP) + Item(itemnum).AddHP
SendActionMsg GetPlayerMap(index), "+" & Item(itemnum).AddHP, BrightGreen, ACTIONMSG_SCROLL, GetPlayerX(index) * 32, GetPlayerY(index) * 32
SendVital index, HP
' send vitals to party if in one
If TempPlayer(index).inParty > 0 Then SendPartyVitals TempPlayer(index).inParty, index
End If
- Código:
TempPlayer(index).ConsumeCD = GetTickCount + (5 * 1000)
No lugar do 5,você pode colocar o valor que quiser para o cooldown. No meu caso foi de 5 segundos. A multiplicação por mil ( * 1000) é porque a função trabalha em milissegundos
Fim