Jump to content
  • 0

Problema com curadeira.


Question

Posted

Boa noite pessoal,

Estou com um NPC que da buff para level 0 normal e level 1 para vip, porém ele esta dando os mesmos buffs para os dois, alguém poe me ajudar?

prontera,150,186,5	script	Buffs & Cura	936,{

//===== Configurações do NPC =================================

.npc$ = "[Buffs & Cura]"; // Nome do NPC.
.time = 7; // Tempo que o jogador precisa esperar para se buffar novamente[Em segundos]. (Para desabilitar coloque 0).
.groupid = 1; // Level para o jogador ser considerado vip.
setarray .buffn[0], 30, 32; // ID dos buffs do jogador normal. (Pode ser consultado no arquivo const).
setarray .blvn[0],  10, 10; // Level dos buffs do jogador normal.
.tbuffn = 5; // Tempo dos buffs do jogador normal[Minutos].
setarray .buffv[0], 30, 35, 41, 40, 32, 29, 39; // ID dos buffs do jogador vip. (Pode ser consultado no arquivo const).
setarray .blvv[0],  10, 10, 10, 10, 10, 10, 10; // Level dos buffs do jogador vip.
.tbuffv = 10; // Tempo dos buffs do jogador vip[Minutos].
.msgn$ = "Tenha um bom jogo."; // Mensagem que vai ser exibida quando o jogador normal se buffar e curar.
.msgv$ = "Espero que você esteja se divertindo em nosso servidor, tenha um excelente jogo."; // Mensagem que vai ser exibida quando o jogador vip se buffar e curar.

//============================================================

.@delay = gettimetick(2);

if( .@delay < buff_delay ) { message strcharinfo(0), .npc$+" Aguarde "+(buff_delay - .@delay)+" segundos para se buffar e curar novamente."; end; }

buff_delay = gettimetick(2) + .time;

if(getgroupid() < .lv){

specialeffect2 7;
percentheal 100,100;
for( set .@i, 0; .@i < getarraysize(.buffn); set .@i, .@i + 1 )
sc_start .buffn[.@i],.tbuffn*60000,.blvn[.@i];
message strcharinfo(0), .npc$+" "+.msgn$+"";
end;
}

specialeffect2 14;
percentheal 100,100;
for( set .@i, 0; .@i < getarraysize(.buffv); set .@i, .@i + 1 )
sc_start .buffv[.@i],.tbuffv*60000,.blvv[.@i];
message strcharinfo(0), .npc$+" "+.msgv$+"";
end;

OnPCLoginEvent:
.@delay = 0;
end;
}

 

1 answer to this question

Recommended Posts

  • 0
Posted
2 hours ago, bu3nox said:

if(getgroupid() < .lv){

O problema está nessa parte do código, ele está verificando uma variável que não está declarada no script, variável '.lv'.

Você só precisa fazer isto:

De:

Spoiler

if(getgroupid() < .lv){

 

Para:

Spoiler

if(getgroupid() < .groupid){

 

Espero que tenha entendido o problema e tenha te ajudado. ?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...