
itallo.cezar
Membro-
Total de itens
0 -
Registro em
-
Última visita
Reputação
0 InicianteSobre itallo.cezar

-
Bom pessoal, desculpas antecipadas se estou postando no lugar errado é meu 1° post. Eu tenho esse npc - script SistemaPresenca -1,{ OnInit: bindatcmd "presença",strnpcinfo(3)+"::OnAtcommand"; //--------------------------- CONFIGURAÇÕES ---------------------------- // Tempo para ganho de ponto. (Em minutos) set .tempo, 60; // O tempo é resetado ao se deslogar? (1 = sim, 0 = não) set .reset, 0; // Tempo máximo em segundos aceito em AFK. (Utilize valor 0 para aceitar jogadores AFK) set .afk, 0; // Defina se será aceito @autotrade, em caso de se permitir jogador AFK. // 0 = É aceito. // 1 = Não é aceito personagem em @autotrade. // 2 = Não é aceito personagem com loja aberta, mesmo que sem @autotrade. set .loja, 1; // //---------------------------------------------------------------------- //----------------- NPC de Troca de Pontos por Itens ------------------- initnpctimer; end; OnAtcommand: mes "[Sistema Presença]"; if (#PontosPresenca) { mes "Você possui " + #PontosPresenca + " ponto(s) de presença."; mes "Para saber quanto tempo lhe resta digite o comando @presença"; } else { mes "Você não possui pontos de presença."; } mes "Falta(m) "+ (.tempo - #TempoPresenca) +" minuto(s) para você ganhar 1 ponto de presença."; mes "Você ganha 1 ponto de presença por cada " + .tempo + " minutos online."; if (.reset) mes "Seu tempo para ganho de ponto é reiniciado ao se deslogar."; if (.afk) mes "Ao ficar AFK o tempo de presença não é contado."; if (.loja == 1) mes "Personagens em @autotrade o tempo de presença não é contado."; if (.loja == 2) mes "Personagens com lojas abertas o tempo de presença não é contado."; close; OnTimer60000: stopnpctimer; query_sql("SELECT account_id FROM `char` WHERE online = 1", [email protected]_id); for (set [email protected], 0; [email protected] < getarraysize([email protected]_id); [email protected]++) { if (attachrid([email protected]_id[[email protected]])) { if( (.afk && checkidle(strcharinfo(0)) > .afk) || (.loja && ((.loja == 1 && checkvending(strcharinfo(0)) == 2) || (.loja == 2 && checkvending(strcharinfo(0))))) ) { break; } set #TempoPresenca, #TempoPresenca + 1; if (#TempoPresenca >= .tempo) { set #PontosPresenca, #PontosPresenca + 1; set #TempoPresenca, 0; } detachrid; } } initnpctimer; end; OnPCLogoutEvent: if (.reset) { set #TempoPresenca, 0; } end; } //------------------ NPC Troca de Pontos por Itens --------------------- prontera,147,196,3 script Itens por Presença 833,{ mes "[Itens por Presença]"; if (#PontosPresenca) { mes "Você possui " + #PontosPresenca + " ponto(s) de presença."; mes "Para saber quanto tempo falta, digite @presença"; } else { mes "Você não possui pontos de presença."; mes "Digite @presença para ver o total de pontos."; } next; for (set [email protected], 0; [email protected] < getarraysize(.itemid); [email protected]++) { set [email protected]$, [email protected]$ + getitemname(.itemid[[email protected]]) + "(" + .qtd[[email protected]] + ") = " + .pontos[[email protected]] + " pt(s)"; if (([email protected]+1) != getarraysize(.itemid)) { set [email protected]$, [email protected]$ + ":"; } } if (prompt([email protected]$) != 255) { set @menu, @menu - 1; mes "[Itens por Presença]"; if (#PontosPresenca < .pontos[@menu]) { mes "Você não possui pontos suficientes."; } else if (!checkweight(.itemid[@menu],.qtd[@menu])) { mes "Você não possui capacidade de peso suficiente."; } else { mes "Tome seu item " + getitemname(.itemid[@menu]) + "."; getitem .itemid[@menu],.qtd[@menu]; set #PontosPresenca, #PontosPresenca - .pontos[@menu]; } close; } end; OnInit: //----------------- CONFIGURAÇÃO NPC TROCA DE PONTOS ------------------- // Escreva o id do item, pontos necessários para se obter e a quantidade // ganha que serão exibidos no NPC de recompensas. // Você pode aumentar e diminuir a quantidade de itens disponiveis, porem // se atentando a ordem entre as arrays. Ou seja, o item ID na primeira // posição da array ".itemid" custará os pontos presentes na primeira // posição da array ".pontos", onde será recebida a quantidade do item // determinada na primeira posição da array ".qtd". Assim por diante com // o segundo item, terceiro item e etc. Lembre-se que todas as 3 arrays // precisam ter o mesmo tamanho. // // ID dos Itens setarray .itemid,12919,12920,12921,12208,12912,12902,5846,2202,5800,5137,5308; // Pontos Requeridos setarray .pontos,3,10,10,2,10,15,35,40,45,35,30; // Quantidade Ganha setarray .qtd,1,1,1,1,1,1,1,1,1,1,1; end; } só que toda vez que faço um @reloadscript ou modifico alguma coisa no servidor e para de contar e não volta mais. (Não entendo muito de script) Como poderia ser feito para ele contar normal, mesmo depois de alguma modificação?
-
itallo.cezar começou a seguir NPC Presença
-
Bom pessoal, desculpas antecipadas se estou postando no lugar errado é meu 1° post. Eu tenho esse npc - script SistemaPresenca -1,{ OnInit: bindatcmd "presença",strnpcinfo(3)+"::OnAtcommand"; //--------------------------- CONFIGURAÇÕES ---------------------------- // Tempo para ganho de ponto. (Em minutos) set .tempo, 60; // O tempo é resetado ao se deslogar? (1 = sim, 0 = não) set .reset, 0; // Tempo máximo em segundos aceito em AFK. (Utilize valor 0 para aceitar jogadores AFK) set .afk, 0; // Defina se será aceito @autotrade, em caso de se permitir jogador AFK. // 0 = É aceito. // 1 = Não é aceito personagem em @autotrade. // 2 = Não é aceito personagem com loja aberta, mesmo que sem @autotrade. set .loja, 1; // //---------------------------------------------------------------------- //----------------- NPC de Troca de Pontos por Itens ------------------- initnpctimer; end; OnAtcommand: mes "[Sistema Presença]"; if (#PontosPresenca) { mes "Você possui " + #PontosPresenca + " ponto(s) de presença."; mes "Para saber quanto tempo lhe resta digite o comando @presença"; } else { mes "Você não possui pontos de presença."; } mes "Falta(m) "+ (.tempo - #TempoPresenca) +" minuto(s) para você ganhar 1 ponto de presença."; mes "Você ganha 1 ponto de presença por cada " + .tempo + " minutos online."; if (.reset) mes "Seu tempo para ganho de ponto é reiniciado ao se deslogar."; if (.afk) mes "Ao ficar AFK o tempo de presença não é contado."; if (.loja == 1) mes "Personagens em @autotrade o tempo de presença não é contado."; if (.loja == 2) mes "Personagens com lojas abertas o tempo de presença não é contado."; close; OnTimer60000: stopnpctimer; query_sql("SELECT account_id FROM `char` WHERE online = 1", [email protected]_id); for (set [email protected], 0; [email protected] < getarraysize([email protected]_id); [email protected]++) { if (attachrid([email protected]_id[[email protected]])) { if( (.afk && checkidle(strcharinfo(0)) > .afk) || (.loja && ((.loja == 1 && checkvending(strcharinfo(0)) == 2) || (.loja == 2 && checkvending(strcharinfo(0))))) ) { break; } set #TempoPresenca, #TempoPresenca + 1; if (#TempoPresenca >= .tempo) { set #PontosPresenca, #PontosPresenca + 1; set #TempoPresenca, 0; } detachrid; } } initnpctimer; end; OnPCLogoutEvent: if (.reset) { set #TempoPresenca, 0; } end; } //------------------ NPC Troca de Pontos por Itens --------------------- prontera,147,196,3 script Itens por Presença 833,{ mes "[Itens por Presença]"; if (#PontosPresenca) { mes "Você possui " + #PontosPresenca + " ponto(s) de presença."; mes "Para saber quanto tempo falta, digite @presença"; } else { mes "Você não possui pontos de presença."; mes "Digite @presença para ver o total de pontos."; } next; for (set [email protected], 0; [email protected] < getarraysize(.itemid); [email protected]++) { set [email protected]$, [email protected]$ + getitemname(.itemid[[email protected]]) + "(" + .qtd[[email protected]] + ") = " + .pontos[[email protected]] + " pt(s)"; if (([email protected]+1) != getarraysize(.itemid)) { set [email protected]$, [email protected]$ + ":"; } } if (prompt([email protected]$) != 255) { set @menu, @menu - 1; mes "[Itens por Presença]"; if (#PontosPresenca < .pontos[@menu]) { mes "Você não possui pontos suficientes."; } else if (!checkweight(.itemid[@menu],.qtd[@menu])) { mes "Você não possui capacidade de peso suficiente."; } else { mes "Tome seu item " + getitemname(.itemid[@menu]) + "."; getitem .itemid[@menu],.qtd[@menu]; set #PontosPresenca, #PontosPresenca - .pontos[@menu]; } close; } end; OnInit: //----------------- CONFIGURAÇÃO NPC TROCA DE PONTOS ------------------- // Escreva o id do item, pontos necessários para se obter e a quantidade // ganha que serão exibidos no NPC de recompensas. // Você pode aumentar e diminuir a quantidade de itens disponiveis, porem // se atentando a ordem entre as arrays. Ou seja, o item ID na primeira // posição da array ".itemid" custará os pontos presentes na primeira // posição da array ".pontos", onde será recebida a quantidade do item // determinada na primeira posição da array ".qtd". Assim por diante com // o segundo item, terceiro item e etc. Lembre-se que todas as 3 arrays // precisam ter o mesmo tamanho. // // ID dos Itens setarray .itemid,12919,12920,12921,12208,12912,12902,5846,2202,5800,5137,5308; // Pontos Requeridos setarray .pontos,3,10,10,2,10,15,35,40,45,35,30; // Quantidade Ganha setarray .qtd,1,1,1,1,1,1,1,1,1,1,1; end; } só que toda vez que faço um @reloadscript ou modifico alguma coisa no servidor e para de contar e não volta mais. (Não entendo muito de script) Como poderia ser feito para ele contar normal, mesmo depois de alguma modificação?
-
Bom pessoal, desculpas antecipadas se estou postando no lugar errado é meu 1° post. Eu tenho esse npc - script SistemaPresenca -1,{ OnInit: bindatcmd "presença",strnpcinfo(3)+"::OnAtcommand"; //--------------------------- CONFIGURAÇÕES ---------------------------- // Tempo para ganho de ponto. (Em minutos) set .tempo, 60; // O tempo é resetado ao se deslogar? (1 = sim, 0 = não) set .reset, 0; // Tempo máximo em segundos aceito em AFK. (Utilize valor 0 para aceitar jogadores AFK) set .afk, 0; // Defina se será aceito @autotrade, em caso de se permitir jogador AFK. // 0 = É aceito. // 1 = Não é aceito personagem em @autotrade. // 2 = Não é aceito personagem com loja aberta, mesmo que sem @autotrade. set .loja, 1; // //---------------------------------------------------------------------- //----------------- NPC de Troca de Pontos por Itens ------------------- initnpctimer; end; OnAtcommand: mes "[Sistema Presença]"; if (#PontosPresenca) { mes "Você possui " + #PontosPresenca + " ponto(s) de presença."; mes "Para saber quanto tempo lhe resta digite o comando @presença"; } else { mes "Você não possui pontos de presença."; } mes "Falta(m) "+ (.tempo - #TempoPresenca) +" minuto(s) para você ganhar 1 ponto de presença."; mes "Você ganha 1 ponto de presença por cada " + .tempo + " minutos online."; if (.reset) mes "Seu tempo para ganho de ponto é reiniciado ao se deslogar."; if (.afk) mes "Ao ficar AFK o tempo de presença não é contado."; if (.loja == 1) mes "Personagens em @autotrade o tempo de presença não é contado."; if (.loja == 2) mes "Personagens com lojas abertas o tempo de presença não é contado."; close; OnTimer60000: stopnpctimer; query_sql("SELECT account_id FROM `char` WHERE online = 1", [email protected]_id); for (set [email protected], 0; [email protected] < getarraysize([email protected]_id); [email protected]++) { if (attachrid([email protected]_id[[email protected]])) { if( (.afk && checkidle(strcharinfo(0)) > .afk) || (.loja && ((.loja == 1 && checkvending(strcharinfo(0)) == 2) || (.loja == 2 && checkvending(strcharinfo(0))))) ) { break; } set #TempoPresenca, #TempoPresenca + 1; if (#TempoPresenca >= .tempo) { set #PontosPresenca, #PontosPresenca + 1; set #TempoPresenca, 0; } detachrid; } } initnpctimer; end; OnPCLogoutEvent: if (.reset) { set #TempoPresenca, 0; } end; } //------------------ NPC Troca de Pontos por Itens --------------------- prontera,147,196,3 script Itens por Presença 833,{ mes "[Itens por Presença]"; if (#PontosPresenca) { mes "Você possui " + #PontosPresenca + " ponto(s) de presença."; mes "Para saber quanto tempo falta, digite @presença"; } else { mes "Você não possui pontos de presença."; mes "Digite @presença para ver o total de pontos."; } next; for (set [email protected], 0; [email protected] < getarraysize(.itemid); [email protected]++) { set [email protected]$, [email protected]$ + getitemname(.itemid[[email protected]]) + "(" + .qtd[[email protected]] + ") = " + .pontos[[email protected]] + " pt(s)"; if (([email protected]+1) != getarraysize(.itemid)) { set [email protected]$, [email protected]$ + ":"; } } if (prompt([email protected]$) != 255) { set @menu, @menu - 1; mes "[Itens por Presença]"; if (#PontosPresenca < .pontos[@menu]) { mes "Você não possui pontos suficientes."; } else if (!checkweight(.itemid[@menu],.qtd[@menu])) { mes "Você não possui capacidade de peso suficiente."; } else { mes "Tome seu item " + getitemname(.itemid[@menu]) + "."; getitem .itemid[@menu],.qtd[@menu]; set #PontosPresenca, #PontosPresenca - .pontos[@menu]; } close; } end; OnInit: //----------------- CONFIGURAÇÃO NPC TROCA DE PONTOS ------------------- // Escreva o id do item, pontos necessários para se obter e a quantidade // ganha que serão exibidos no NPC de recompensas. // Você pode aumentar e diminuir a quantidade de itens disponiveis, porem // se atentando a ordem entre as arrays. Ou seja, o item ID na primeira // posição da array ".itemid" custará os pontos presentes na primeira // posição da array ".pontos", onde será recebida a quantidade do item // determinada na primeira posição da array ".qtd". Assim por diante com // o segundo item, terceiro item e etc. Lembre-se que todas as 3 arrays // precisam ter o mesmo tamanho. // // ID dos Itens setarray .itemid,12919,12920,12921,12208,12912,12902,5846,2202,5800,5137,5308; // Pontos Requeridos setarray .pontos,3,10,10,2,10,15,35,40,45,35,30; // Quantidade Ganha setarray .qtd,1,1,1,1,1,1,1,1,1,1,1; end; } só que toda vez que faço um @reloadscript ou modifico alguma coisa no servidor e para de contar e não volta mais. (Não entendo muito de script) Como poderia ser feito para ele contar normal, mesmo depois de alguma modificação?