// ---------------------------------------------------------| /* -------------------- Tabelas SQL ------------------------| DROP TABLE IF EXISTS `cash_shop`; CREATE TABLE `cash_shop` ( `id` int(11) unsigned not null auto_increment, `nameid` int(11) unsigned NOT NULL DEFAULT '0', `price` int(11) unsigned NOT NULL DEFAULT '0', `type` int(11) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM; ALTER TABLE `login` ADD `Vip` INT NOT NULL ; */ //-----------------------------------------------------------| //-----------------------------------------------------------| - script ConfVip -1,{ OnInit: $@VipAc = 99; // Nível de conta que permite entrar no Gerenciamento. [ 4, 10 ou 99 ] $@NvVip = 1; // Nível de conta para usuários Vip. [ 1 à 3 ] $VipMode = 2; // Modo do Sistema VIP. [ 1 = Tempo Corrido , 2 = Contagem Diária ] $@SalaVip$ = "prontera"; // Mapa da Sala Vip. [ ,"mapa"; ] setarray $@CoordXY[0],150,150; // Coordenadas da Sala Vip [ ,CoordX,CoordY; ] $@VipGratis = 1; // Ativa Vip Grátis. [ 1 = Sim, 0 = Não ] $@VipGDias = 5; // Dias para Vip Grátis. $@ExpBonus = 0; // Ativa o Bonus de XP e Drop para usuários Vip. [ 1=Somente EXP, 2=Somente DROP, 3=EXP e DROP, 0=Desativado ] setarray $@ExpRate[0],50,200; // Percentagem do Bonus de XP e Drop respectivamente. [ ,EXP,DROP; ] (PS: 200 é equivalente ao dobro de chances dos drops) $@ChatVip = 1; // Ativa chat de indicação no NPC Gerente Vip. [ 1 = Sim, 0 = Não ] $@ChatMsgsVip$ = "Gerente Vip"; // Mensagem no Chat que irá aparecer. $@StorageVip = 0; // Possibilita o usuário VIP colocar senha no armazém/storage. [ 1 = Sim, 0 = Não ] (Somente use essa função se estver habilitado o comando @storage) } prontera,148,185,5 script Gerente Vip 4_M_OILMAN,{ query_sql "SELECT `Vip` FROM `login` WHERE `account_id` = '"+getcharid(3)+"'", @dias; query_sql ("SELECT `group_id` , `Vip` FROM `login` WHERE `account_id`='"+getcharid(3)+"'",@Out,@Vip); mes "[ Gerente ]"; mes " Bem vindo ^EEAD2D"+strcharinfo(0)+"^000000 !"; mes "-----------------------------------"; if(#CASHPOINTS<=0) mes ""; else mes "Você atualmente possui ^EEAD2D"+#CASHPOINTS+"^000000 ROP's"; if(@Vip<=60 && @Vip>0) { if(@Vip==1) mes "Você possui ^EEAD2D1^000000 minuto VIP restante."; else mes "Você possui ^EEAD2D"+@Vip+"^000000 minutos VIP restantes."; } if(@Vip<=1440 && @Vip>60) { @temp = @Vip/60; if(@temp==1) mes "Você possui ^EEAD2D1^000000 Hora VIP restante."; else mes "Você possui ^EEAD2D"+@temp+"^000000 Horas VIP restantes."; } if(@Vip>1440) { @temp = @Vip/1440; if(@temp==1) mes "Você possui ^EEAD2D1^000000 Dia VIP restante."; else mes "Você possui ^EEAD2D"+@temp+"^000000 Dias VIP restantes."; } if(@Out<=0) { mes "Vejo que você não é um usuário VIP."; mes "Se está interessado em se tornar um usuário Vip, se informe melhor em nosso site."; } mes "-----------------------------------"; mes "Porfavor, escolha uma das opções."; next; @Menu$ = "Sala Vip:^FF4500Loja de ROP's^000000:"+(($@StorageVip==1)?"Senha no Armazém":"")+":Como obter ROP's:Cancelar:"+((getgmlevel()>=$@VipAc)?"Acesso ADM":""); switch(select(@Menu$)){ case 1: mes "[ Gerente ]"; if(getgroupid()<$@NvVip) { mes "Você não é um usuário VIP."; mes "Se está interessado em se tornar um usuário Vip, se informe melhor em nosso site."; close; } mes "Okay, estarei te teleportando para a Sala Vip neste exato momento."; mes "Tenha uma boa estádia lá."; close2; warp $@SalaVip$,$@CoordXY[0],$@CoordXY[1]; end; case 2: mes "[ Gerente ]"; mes "Tudo bem, irei abrir a Loja de ROP's para você."; close2; callshop "cash_shop",1; end; case 3: if(getgroupid()>=1 && getgroupid()<=3) { if(#passstore==0) { mes "[ Gerente ]"; mes "Bem-vindo as configurações do acesso ao armazém."; mes "Vejo que você não possui uma senha para seu armazém."; mes "o que deseja fazer?"; next; if(select("Criar senha","Sair")==2) { mes "[ Gerente ]"; mes "Caso mude de ideia estarei aqui para servi-lo."; close; } mes "[ Gerente ]"; mes "Certo, preciso que você digite a senha que deseja criar."; mes "Lembre-se, atualmente não temos como recuperar a senha caso você esqueça, então porfavor anote-a."; next; AgainPass: mes "[ Gerente ]"; mes "Digite a senha que deseja utilizar."; input @Senha$; next; mes "[ Gerente ]"; mes "Você digitou a senha:"; mes " ^FF4500"+@Senha$+"^000000 "; mes "Ela está correta?"; next; if(select("Sim","Não")==2) { goto AgainPass; } mes "[ Gerente ]"; mes "Prontinho, senha de armazém adicionada."; close2; #pass$ = @Senha$; #passstore = 1; end; } mes "[ Gerente ]"; mes "Bem-vindo as configurações do acesso ao armazém."; mes "Vejo que você já possui uma senha para seu armazém."; mes "o que deseja fazer?"; next; switch(select("Mudar senha","Remover senha","Sair")) { case 1: mes "[ Gerente ]"; mes "Muito bem, para que eu possa mudar a sua senha do armazém, preciso que você me informe a sua antiga senha."; next; mes "[ Gerente ]"; mes "Digite a sua antiga senha."; input @Senha$; next; if(@Senha$==#pass$) { AgainPass2: mes "[ Gerente ]"; mes "Tudo certo até o momento. Agora preciso que você digite a nova senha."; next; input @New$; next; mes "[ Gerente ]"; mes "Você digitou a senha:"; mes " ^FF4500"+@New$+"^000000 "; mes "Ela está correta?"; next; if(select("Sim","Não")==2) { goto AgainPass2; } mes "[ Gerente ]"; mes "Senha alterada com sucesso!"; close2; #pass$ = @New$; end; } mes "[ Gerente ]"; mes "A senha que você digitou não coincide com a sua senha de armazém atual."; mes "Tente novamente mais tarde."; close; case 2: mes "[ Gerente ]"; mes "Tem certeza que deseja remover a sua senha de armazém?"; next; if(select("Sim","Não")==2) { mes "[ Gerente ]"; mes "Caso mude de ideia estarei aqui para servi-lo."; close; } mes "[ Gerente ]"; mes "Prontinho, senha removida com sucesso."; close2; #passstore = 0; end; case 3: mes "[ Gerente ]"; mes "Obrigado. Estarei sempre aqui quando precisar dos meus serviços."; close; } } mes "[ Gerente ]"; mes "Usuários Vip podem optar por adicionar um ^EEAD2DCódigo^000000 no seu armazém caso preferir."; mes "É um metódo de segurança extra, principalmente para usuários que ecessam por computadores de terceiros."; next; mes "[ Gerente ]"; mes "Para obter as vantagens de um usuário Vip, basta entrar em nosso site."; mes "Lá você terá uma explicação mais detalhada de como se tornar um usuário Vip."; close; case 4: mes "[ Gerente ]"; mes "Para obter ROP's, você terá que comprar em nosso site os pacotes disponível de ROP's."; mes "Lá estará todas as informações de como você irá adiquirir e como será a forma de pagamento."; next; mes "[ Gerente ]"; mes "Também irá saber todas as vantagens de como é ser um usuário VIP e a lista de Itens ROP's disponíveis."; mes "Há claro, você pode ver os itens ROP's disponíveis aqui comigo."; mes "Basta selecionar a opção ^EEAD2D'Loja de ROP's'^000000 no menu principal."; close; case 5: mes "[ Gerente ]"; mes "Sempre que precisar estarei aqui para lhe atender."; mes "Obrigado e volte sempre!"; close; case 6: callfunc "Gerente#Syn",0; } OnInit: if($@ChatVip==1) { waitingroom $@ChatMsgsVip$,0; } } function script Gerente#Syn { OnStartG: if(getgroupid()>=$@VipAc) { mes "[ Gerente ]"; mes "Olá "+strcharinfo(0)+"."; mes "Sou o Gerente de dados do Servidor. Meu trabalho é facilitar a vida do pessoal da Administração."; mes "Porfavor, escolha a opção que você deseja executar."; next; switch(select("Gerenciar Vip's","Gerenciar CASH","Gerenciar Loja","Gerenciar Banimentos","Gerenciar Staff","Sair")) { case 1: mes "[ Gerente ]"; mes "Nessa área tenho total poder de manipular os dados de acesso VIP no servidor."; mes "Basta você me indicar o que quer fazer que eu executo a ação."; mes "Porfavor escolha uma das opções."; next; switch(select("Adicionar acesso Vip","Remover acesso Vip","Ver Contas VIP","Retornar ao menu principal")) { case 1: mes "[ Gerente ]"; mes "Ok, agora preciso coletar os dados da conta do usuário que você deseja adicionar o acesso."; mes "Digite o Login da Conta à qual irei adicionar acesso Vip."; next; input .@Conta$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+.@Conta$+"'",.@ContaEx); if(.@ContaEx==0) { mes "^FF0000***ERROR***^000000"; mes " "; mes "Você não digitou uma conta válida."; mes " "; mes "^FF0000Fechando conexão^000000"; close; } next; mes "[ Gerente ]"; mes "Agora, digite a quantidade de dias que o usuário terá acesso Vip"; mes "Conta: ^FF0000"+.@Conta$+"^000000."; mes " "; mes "^FF0000**Dica: Digite '0' para cancelar.^000000"; next; input .@VipQ; if(.@VipQ==0) { mes "Ação cancelada."; mes " "; mes "^FF0000***Fechando conexão***^000000"; close; } .@amVip = .@VipQ*1440; mes "[ Gerente ]"; mes "Tudo certo, processando os dados e adicionando os dias de acesso Vip."; next; mes "[ Gerente ]"; mes "Pronto, acesso adicionado!"; mes " "; mes "Conta: ^FF0000"+.@Conta$+"^000000"; mes "Dias: ^FF0000"+.@VipQ+"^000000."; query_sql ("SELECT `value` FROM `acc_reg_num_db` WHERE `key`='#VipOk' AND `account_id` = '"+.@ContaEx+"'",.@valor); if(getarraysize(.@valor)) { query_sql "UPDATE `acc_reg_num_db` SET `value` = '"+$@NvVip+"' WHERE `key`='#VipOk' AND `account_id` = '"+.@ContaEx+"'"; }else{ query_sql "INSERT INTO `acc_reg_num_db` (`account_id`, `key`, `index`, `value`) VALUES ('"+.@ContaEx+"', '#VipOk', '0', '1')"; } query_sql ("UPDATE `login` SET `group_id`='"+$@NvVip+"',`Vip`=`Vip`+"+.@amVip+" WHERE `userid`='"+.@Conta$+"'"); close; case 2: mes "[ Gerente ]"; mes "Ok, agora preciso coletar os dados da conta do usuário que você deseja remover o acesso."; mes "Digite o Login da Conta."; next; input @AccRet$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+@AccRet$+"'",.@NExiste); if (!.@NExiste) { mes "^FF0000***ERROR***^000000"; mes " "; mes "Você não digitou uma conta válida."; mes " "; mes "^FF0000Fechando conexão^000000"; close; } next; mes "[ Gerente ]"; mes "Agora, digite a quantidade de dias que serão removidos do usuário Vip."; mes "Conta: "+.@AccRet$+"."; mes "^FF0000**Dica: Digite '0' para cancelar.^000000"; next; input .@QRem; if(.@QRem==0) { mes "Ação cancelada."; mes " "; mes "^FF0000***Fechando conexão***^000000"; close; } mes "[ Gerente ]"; mes "Eu irei remover: ^FF0000"+.@QRem+"^000000 dias da conta: ^FF0000"+@AccRet$+"^000000."; mes "Estes dados estão corretos?"; next; if(select("Sim","Não")==1) { mes "[ Gerente ]"; mes "Tudo certo, processando os dados e removendo os dias de acesso Vip"; mes " "; mes " "; mes "Comando efetuado com SUCESSO!"; close2; .@RemDia = .@QRem*1440; query_sql ("UPDATE `login` SET `Vip`=`Vip`-"+.@RemDia+" WHERE `userid`='"+@AccRet$+"'"); end; } mes "[ Gerente ]"; mes "Encerrando conexão..."; mes "Limpando dados..."; mes "Conexão encerrada!"; close; case 3: query_sql("SELECT `userid` , `Vip` FROM `login` WHERE `group_id`= "+$@NvVip+" ",@Vips$,@dias); for(@i = 0; @i < getarraysize(@Vips$); @i++){ mes "-----------------------------------"; mes "|-- ^FF0000"+@dias[@i]/1440+"^000000 Dias --> Conta: ^FF0000"+@Vips$[@i]+"^000000 "; } close; case 4: goto OnStartG; } case 2: mes "[ Gerente ]"; mes "Nessa área tenho total poder de manipular os dados de CASH do servidor."; mes "Basta você me indicar o que quer fazer que eu executo a ação."; mes "Porfavor escolha uma das opções."; next; switch(select("Adicionar CASHs","Remover CASHs","Voltar ao menu principal")) { case 1: mes "[ Gerente ]"; mes "Ok, agora preciso coletar os dados da conta do usuário que irei adicionar os CASHs."; mes "Digite o Login da Conta."; next; input .@Conta$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+.@Conta$+"'",.@ContaEx); if(.@ContaEx==0) { mes "^FF0000***ERROR***^000000"; mes " "; mes "Você não digitou uma conta válida."; mes " "; mes "^FF0000Fechando conexão^000000"; close; } query_sql ("SELECT `value` FROM `acc_reg_num_db` WHERE `key`='#CASHPOINTS' AND `account_id` = '"+.@ContaEx+"'",.@valor); mes "Essa conta possui "+.@valor+" CASHs."; mes "Digite a quantidade de CASH que deseja adicionar nesta conta."; mes "^FF0000**Dica: Digite '0' para cancelar.^000000"; next; input .@CASH; if(.@CASH==0) { mes "Ação cancelada."; mes " "; mes "^FF0000***Fechando conexão***^000000"; close; } mes "[ Gerente ]"; mes "Eu irei adicionar: ^FF0000"+.@CASH+"^000000 CASH's na conta: ^FF0000"+.@Conta$+"^000000."; mes "Estes dados estão corretos?"; next; if(select("Sim","Não")==2) { mes "[ Gerente ]"; mes "Encerrando conexão..."; mes "Limpando dados..."; mes "Conexão encerrada!"; close; } if(getarraysize(.@valor)) { query_sql "UPDATE `acc_reg_num_db` SET `value` = `value` + '"+.@CASH+"' WHERE `key`='#CASHPOINTS' AND `account_id` = '"+.@ContaEx+"'"; }else{ query_sql "INSERT INTO `acc_reg_num_db` (`account_id`, `key`, `index`, `value`) VALUES ('"+.@ContaEx+"', '#CASHPOINTS', '0', '"+.@CASH+"')"; } next; mes "[ Gerente ]"; mes "Comando efetuado com SUCESSO!"; mes "CASHs adicionados."; close; case 2: mes "[ Gerente ]"; mes "Ok, agora preciso coletar os dados da conta do usuário que irei remover os CASHs."; mes "Digite o Login da Conta."; next; input .@Conta$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+.@Conta$+"'",.@ContaEx); if(.@ContaEx==0) { mes "^FF0000***ERROR***^000000"; mes " "; mes "Você não digitou uma conta válida."; mes " "; mes "^FF0000Fechando conexão^000000"; close; } mes "[ Gerente ]"; query_sql "SELECT `value` FROM `acc_reg_num_db` WHERE `key` ='#CASHPOINTS' AND `account_id` = '"+.@ContaEx+"'",.@valor; mes "Essa conta possui "+.@valor+" CASHs."; mes "Digite a quantidade de CASHs que deseja remover dessa conta."; mes "^FF0000**Dica: Digite '0' para cancelar.^000000"; next; input .@CASH; if(.@CASH==0) { mes "Ação cancelada."; mes " "; mes "^FF0000***Fechando conexão***^000000"; close; } mes "[ Gerente ]"; mes "Eu irei remover: ^FF0000"+.@CASH+"^000000 CASH's da conta: ^FF0000"+.@Conta$+"^000000."; mes "Estes dados estão corretos?"; next; if(select("Sim","Não")==2) { mes "[ Gerente ]"; mes "Encerrando conexão..."; mes "Limpando dados..."; mes "Conexão encerrada!"; close; } if(.@valor < @CASH) { mes "[ Gerente ]"; mes "Essa conta possui um valor menor do que você solicitou."; mes "Conexão encerrada"; close; } if(getarraysize(.@valor)) { query_sql "UPDATE `acc_reg_num_db` SET `value` = `value` - '"+.@CASH+"' WHERE `key`='#CASHPOINTS' AND `account_id` = '"+.@ContaEx+"'"; }else{ query_sql "INSERT INTO `acc_reg_num_db` (`account_id`, `key`, `index`, `value`) VALUES ('"+.@ContaEx+"', '#CASHPOINTS', '0', '"+.@CASH+"')"; } next; mes "[ Gerente ]"; mes "Comando efetuado com SUCESSO!"; mes "CASHs removidos."; close; case 3: goto OnStartG; } case 3: mes "[ Gerente ]"; mes "Nessa área posso adicionar e retirar itens da Loja de CASH."; mes "Basta você me indicar o que quer fazer que eu executo a ação."; mes "Porfavor escolha uma das opções."; next; switch(select("Adicionar Item","Retirar Item","Atualizar Itens")) { case 1: mes "[ Gerente ]"; mes "Insira o ID do item."; input .@Id; next; if(getitemname(.@Id) == "null") { mes "[ Gerente ]"; mes "Não existe nenhum item com esse ID."; close; } mes "Insira o preço do item. (Cash)"; input .@Qtd; if(.@Qtd == 0) { mes "[ Gerente ]"; mes "AVISO O ITEM ESTÁ SENDO VENDIDO GRATUITAMENTE!"; } next; mes "[ Gerente ]"; mes "Item à adicionar ao Shop:"; mes "^EEAD2D"+getitemname(.@Id)+"^000000"; mes "ID do Item: ^EEAD2D"+.@Id+"^000000"; mes "Preço: ^EEAD2D"+.@Qtd+" Cash's^000000"; next; if(select("Prosseguir","Cancelar")==2) { close; } query_sql ("INSERT INTO `cash_shop` (nameid,price) VALUES ("+.@Id+","+.@Qtd+")"); mes "[ Gerente ]"; mes "Item adicionado com sucesso."; callfunc "UpdateShop",0; close; case 2: mes "[ Gerente ]"; mes "Insira o ID do item."; input .@Id; next; query_sql ("SELECT `id`,`nameid` FROM `cash_shop` WHERE `nameid`="+.@Id,.@Id1,.@Id2); mes "[ Gerente ]"; if(!.@Id2) { mes "Este item não existe no shop."; close; } mes "Item à retirar do Shop:"; mes "^EEAD2D"+getitemname(.@Id)+"^000000"; mes "ID do Item: ^EEAD2D"+.@Id+"^000000"; next; if(select("Prosseguir","Cancelar")==2) { close; } query_sql ("DELETE FROM `cash_shop` WHERE `nameid`="+.@Id); npcshopdelitem "cash_shop",.@Id; next; mes "[ Gerente ]"; mes "Item retirado com sucesso."; callfunc "UpdateShop",0; close; case 3: mes "[ Gerente ]"; mes "Deseja atualizar o Shop?"; if(select("Não","Sim")==1) { close; }; .@a = 1; callfunc "UpdateShop",0; next; mes "[ Gerente ]"; mes "Shop atualizado com sucesso."; close; } case 4: mes "[ Gerente ]"; mes "Nessa área tenho total poder de Banir qualquer Conta do servidor."; mes "Basta você me indicar quem quer banir que eu executo a ação."; mes "Porfavor escolha uma das opções."; next; switch(select("Banir Conta","Desbanir Conta","Ver Contas Banidas","Retornar ao menu principal")) { case 1: mes "[ Gerente ]"; mes "Ok, agora preciso coletar os dados da conta do usuário que irei Banir."; mes "Digite o Login da Conta."; next; input @ban$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+@ban$+"'",.@NExiste); if(!.@NExiste){ mes "^FF0000***ERROR***^000000"; mes " "; mes "Você não digitou uma conta válida."; mes " "; mes "^FF0000Fechando conexão^000000"; close; } mes "[ Gerente ]"; mes "Tem certeza que quer banir a conta: ^FF0000"+@ban$+"^000000?"; next; if(select("Sim","Não")==1) { mes "Comando efetuado com SUCESSO!"; mes "Conta Banida."; close2; query_sql ("SELECT `char_id` FROM `char` WHERE `account_id`='"+.@NExiste+"'",.@Kick); for(@i = 0; @i < getarraysize(.@Kick); @i++) { atcommand "@kick "+.@Kick[@i]; } query_sql ("UPDATE `login` SET `state`='5' WHERE `userid`='"+@ban$+"'"); end; } mes "[ Gerente ]"; mes "Encerrando conexão..."; mes "Limpando dados..."; mes "Conexão encerrada!"; close; case 2: next; mes "[ Gerente ]"; mes "Ok, agora preciso coletar os dados da conta do usuário que irei Desbanir."; mes "Digite o Login da Conta."; next; input @ban$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+@ban$+"'",.@NExiste); if(!.@NExiste){ mes "^FF0000***ERROR***^000000"; mes " "; mes "Você não digitou uma conta válida."; mes " "; mes "^FF0000Fechando conexão^000000"; close; } mes "[ Gerente ]"; mes "Comando efetuado com SUCESSO!"; mes "Conta Desbanida."; close2; query_sql ("UPDATE `login` SET `state`='0' WHERE `userid`='"+@ban$+"'"); end; case 3: query_sql("SELECT `userid` FROM `login` WHERE `state`>=5",@ban$); for(@i = 0; @i < getarraysize(@ban$); @i++) { mes "-----------------------------------"; mes "| --> ^FF0000"+@nBan$[@i]+"^000000 "; } close; case 4: goto OnStartG; } case 5: mes "[ Gerente ]"; mes "Escolha a posição de Staff que deseja adicionar."; next; switch(select("Administrador ^CD0000(99)^000000","Game Master ^CD0000(60)^000000","Game Helper ^CD0000(40)^000000","Retirar Staff","Retornar ao menu principal")) { case 1: .@NvGM = 99; goto AddGM; case 2: .@NvGM = 10; goto AddGM; case 3: .@NvGM = 4; goto AddGM; case 4: .@NvGM = 0; goto AddGM; AddGM: mes "[ Gerente ]"; mes "Digite o Login da conta."; next; input .@ContaGM$; query_sql ("SELECT `account_id` FROM `login` WHERE `userid`='"+.@ContaGM$+"'",.@nGM); if(.@nGM==0) { next; mes "A conta não existe."; close; } next; mes "[ Gerente ]"; if(.@NvGM==0) mes "Estou retirando a posição de staff na conta: '"+.@ContaGM$+"'."; else mes "Estou adicionando a posição de staff na conta: '"+.@ContaGM$+"'."; query_sql ("UPDATE `login` SET `group_id`='"+.@NvGM+"' WHERE `userid`='"+.@ContaGM$+"'"); next; mes "[ Gerente ]"; if(.@NvGM==0) mes "Pronto, retirado."; else mes "Pronto, adicionado."; close; case 5: goto OnStartG; } case 6: next; mes "[ Gerente ]"; mes "Ok, até mais."; close; } } } - script CtrlVip -1,{ OnClock0001: if($VipMode==2) { query_sql "UPDATE `login` SET `Vip`=`Vip`-1440 WHERE `group_id`='1'"; sleep2 5000; query_sql "UPDATE `login` SET `group_id`='0' , `Vip`='0' WHERE `Vip`<='0' AND `group_id`='1'"; } end; OnPCLoginEvent: if(getgroupid()==$@VipAc) { end; } if(getgroupid()>=$@NvVip) { if($@ExpBonus==1) { sc_start SC_CASH_PLUSEXP,60000000,$@ExpRate[0]; } if($@ExpBonus==2) { sc_start SC_CASH_RECEIVEITEM,60000000,$@ExpRate[1]; } if($@ExpBonus==3) { sc_start SC_CASH_PLUSEXP,60000000,$@ExpRate[0]; sc_start SC_CASH_RECEIVEITEM,60000000,$@ExpRate[1]; } if($@VipGratis==1) { if(#VipFree!=1) { query_sql ("UPDATE `login` SET `Vip`='"+$@VipGDias+"'*'1440' , `group_id`='"+$@NvVip+"' WHERE `account_id`="+getcharid(3)+""); #VipFree = 1; #VipOk = 1; mes "[Sistema Vip]"; mes "Você acaba de ganhar "+$@VipGDias+" dias de Vip!"; mes "Para que a alterações sejam válidas você precisará relogar."; mes "Deseja relogar agora?"; next; if(select("Sim","Não")==2){ mes "[Sistema Vip]"; mes "Bom jogo!"; close; } mes "[Sistema Vip]"; mes "Relogando..."; close2; atcommand "@kick "+getcharid(0); end; } } } if($VipMode==1) { OnLoop: query_sql ("SELECT `group_id` , `Vip` FROM `login` WHERE `account_id`='"+getcharid(3)+"'",@Out,@Vip); @DiasOut = @Vip; if(@CheckLog!=1) { callfunc "CheckDias",0; @CheckLog = 1; } sleep2 60000; query_sql ("UPDATE `login` SET `group_id`='0' WHERE `Vip`<='0' AND `group_id`='"+$@NvVip+"' AND `account_id`="+getcharid(3)+""); if(@DiasOut<=0 && #VipOk==1) { #VipOk = 0; mes "[Sistema Vip]"; mes "Seus dias de VIP acabaram."; mes "Recarregue para desfrutar das vantagens VIP."; mes " "; mes "Relogando conta para atualização do sistema."; sleep2 5000; atcommand "@kick "+getcharid(0); end; } if(@Out>=1 && @Out<=40) { @DiasOut = @DiasOut-1; query_sql ("UPDATE `login` SET `Vip`='"+@DiasOut+"' WHERE `account_id`="+getcharid(3)+""); if(@DiasOut<=5) { callfunc "CheckDias",0; } goto OnLoop; } goto OnLoop; end; } callfunc "CheckDias",0; end; OnPCLogoutEvent: query_sql ("SELECT `Vip` , `group_id` FROM `login` WHERE `account_id`='"+getcharid(3)+"'",@Out,@Vip); if(@Out<0) { query_sql ("UPDATE `login` SET `Vip`='0' WHERE `account_id`="+getcharid(3)+""); end; } if(@Vip<=0) { query_sql ("UPDATE `login` SET `Vip`='0' WHERE `account_id`="+getcharid(3)+""); end; } end; OnInit: sleep2 2000; for(.@c = 0;.@c < getarraysize($itens2);.@c = .@c+2){ npcshopdelitem "cash_shop",$itens2[.@c]; } callfunc "UpdateShop",0; } function script CheckDias { if(@Out>=1 && @Out<=3) { if(@Vip<=60 && @Vip>0) { @temp = @DiasOut; if(@temp<1) { dispbottom "[Sistema Vip]: Você tem alguns segundos VIP restante."; goto Retorno; end; } if(@temp==1) { dispbottom "[Sistema Vip]: Você tem 1 minuto VIP restante."; goto Retorno; end; } dispbottom "[Sistema Vip]: Você tem "+@temp+" minutos VIP restantes."; goto Retorno; end; } if(@Vip<=1440 && @Vip>60) { @temp = @DiasOut/60; if(@temp==1) { dispbottom "[Sistema Vip]: Você tem 1 hora VIP restante."; goto Retorno; end; } dispbottom "[Sistema Vip]: Você tem "+@temp+" horas VIP restantes."; goto Retorno; end; } if(@Vip>1440) { @temp = @DiasOut/1440; if(@temp==1) { dispbottom "[Sistema Vip]: Você tem 1 dia VIP restante."; goto Retorno; end; } dispbottom "[Sistema Vip]: Você tem "+@temp+" dias VIP restantes."; goto Retorno; end; } } Retorno: return; } function script AddVip { query_sql "SELECT `Vip` FROM `login` WHERE `account_id`='"+getarg(0)+"'",@Out; @dias = @Out+(1440*getarg(1)); query_sql "UPDATE `login` SET `Vip`='"+@dias+"' , `group_id`='"+$@NvVip+"' WHERE `account_id`='"+getarg(0)+"'"; dispbottom "[Sistema Vip]: Foram adicionados "+getarg(1)+" dias Vip com sucesso!"; #VipOk = 1; if(getgroupid()<$@NvVip) { dispbottom "[Sistema Vip]: Relogando conta para aplicar as alterações!"; sleep2 5000; atcommand "@kick "+getcharid(0); } } - script VipCmd -1,{ OnInit: bindatcmd "cmdvip",strnpcinfo(3)+"::OnAtcommand"; if($@StorageVip==1) { bindatcmd "storage",strnpcinfo(3)+"::OnAtcommand2"; } end; OnAtcommand: if(getgroupid()==$@VipAc) callfunc "Gerente#Syn",0; end; OnAtcommand2: if(getgroupid()>=1 && getgroupid()<=3) { if(#passstore==1) { dispbottom "Digite a senha do armazém."; input @pass$; if(@pass$==#pass$) { dispbottom "Acesso ao armazém liberado."; openstorage; end; } dispbottom "Senha inválida."; end; } } openstorage; end; } function script UpdateShop { $@InitShop = 1; npcshopattach "cash_shop"; npcshopdelitem "cash_shop",512; for(.@c = 0;.@c < getarraysize($@cash_shop);.@c++){ npcshopdelitem "cash_shop",$@cash_shop[.@c]; } query_sql ("SELECT `nameid` , `price` FROM `cash_shop` WHERE `id`<'129' ORDER BY `nameid` asc",$@cash_shop,$@valoritem); for(.@i = 0;.@i!=getarraysize($@cash_shop);.@i++) { npcshopadditem "cash_shop",$@cash_shop[.@i],$@valoritem[.@i]; } if(getarraysize($@cash_shop)>=128) { query_sql ("SELECT `nameid` , `price` FROM `cash_shop` WHERE `id`>'127' ORDER BY `nameid` asc",$@cash_shop2,$@valoritem2); for(.@i = 0;.@i!=getarraysize($@cash_shop2);.@i++) { npcshopadditem "cash_shop",$@cash_shop2[.@i],$@valoritem2[.@i]; } } return; } - cashshop cash_shop -1,512:100