- /*-----------------------------------------------------------------*\
- | ______ ____ _____ ___ __ |
- | / ____ / _ / ____/ / / / |
- | \___ / __/ __/ / /__/ /___ |
- | /_____/_ / /____//_____/______/ |
- | /\ /| __ __________ _________ |
- | / \/ | / | / ___ __/ ___/ _ / |
- | / | / ' | _\ \ / / / __// __/ |
- | / /\/| |/_/|_|/____//_/ /____/_/\ \ |
- | /__/ |_| npc Script \/ |
- | |
- +-------------------------------------------------------------------+
- | Projeto Ragnarok Online |
- +-------------------------------------------------------------------+
- | - Criação: Spell Master 16/07/2011 |
- +-------------------------------------------------------------------+
- | - 17/05/2013: |
- Atualizado para novo source cord rAthena. |
- | - 22/09/2014: |
- | Atualizado conforme a nova estrutura do banco de |
- | dados do rAthena. |
- | - 04/12/2014: |
- | Adicionado função de checagem se é verdadeira a |
- | doação na conta do banco. |
- | - 13/07/2015: |
- | Adicionado função para manipulação de GM. |
- | - 15/11/2015: |
- | Atualizado para compatibilidade com Hercules. |
- | - 08/12/2016: |
- | Removida funções de manipulação de cash. |
- | Removida referências ao Ticket de Vip. |
- | Removido desão de GM pois requer manipulação da |
- | da source, inviável para uso geral. |
- | Removido consulta para o ADM de verificar se o |
- | foi feita doação na conta do tesoureiro no banco, |
- | pois requer função php e manipulação de source se |
- | tornando iniável para o uso geral. |
- | - 09/12/2016: |
- | Adicionado variáveis globais para definir atributos.|
- | Atualizado para compatibilidade com Cronus. |
- \*-----------------------------------------------------------------*/
- - script #vip_manager -1,{
- // Configuração para todos poderem usar o npc ^.^
- .@Vip_Room$ = "sec_in02"; // Nome do mapa da sala vip
- .@Vip_X = 138; // Coordenadas
- .@Vip_Y = 161; // Coordenadas
- if(getgroupid() > 2 && getgroupid() < 10) {
- mes "Porteira Vip Premium";
- mes "Olá ^FF0000"+strcharinfo(0)+"^000000";
- while(1) {
- next;
- mes "Porteira Vip Premium";
- mes "O que posso fazer por você hoje?";
- next;
- switch(select("Ir para sala vip.:Consultar dias Vip restantes:Nada Obrigado")) {
- case 1:
- mes "Porteira Vip Premium";
- mes "Volte sempre que precisar de meus serviços.";
- close2;
- warp .@Vip_Room$,.@Vip_X,.@Vip_Y;
- end;
- case 2:
- query_sql "SELECT DATE_FORMAT(`dt_vip`, '%d/%m/%Y') FROM `login` WHERE `account_id`="+getcharid(3),.@VipDays$;
- mes "Porteira Vip Premium";
- mes "Sua conta Vip é válida até o dia" +.@VipDays$;
- break;
- //case 3: Removida funções de consulta de cash
- //case 4: Removida funções de compra do ticket de vip
- //case 5: Trasformada em valor 3 para novo menu
- case 3:
- mes "Porteira Vip Premium";
- mes "Volte sempre que precisar de meus serviços.";
- close;
- }
- }
- }
- else if(getgroupid() > 9 && getgroupid() < 99) {
- mes "Porteira Vip Premium";
- mes "Olá membro da Staff ^FF0000"+strcharinfo(0)+"^000000";
- mes "O que posso fazer por você hoje?";
- next;
- switch(select("Ir para sala vip.:Nada Obrigado")) {
- case 1:
- mes "Porteira Vip Premium";
- mes "Volte sempre que precisar de meus serviços.";
- close2;
- warp .@Vip_Room$,.@Vip_X,.@Vip_Y;
- end;
- case 2:
- mes "Porteira Vip Premium";
- mes "Volte sempre que precisar de meus serviços.";
- close;
- }
- }
- else if(getgroupid() == 99) {
- mes "Porteira Vip Premium";
- mes "Olá Administrador ^FF0000"+strcharinfo(0)+"^000000";
- while(1) {
- next;
- mes "Porteira Vip Premium";
- mes "O que posso fazer por você hoje?";
- next;
- switch(select("Verificar Todas Vips:Verificar Conta vip:Adicionar Vip:Remover Vip:Nada Obrigado")) {
- //case 1: Removida checagem da doação
- //case 2: Removida manipulação de gm
- //case 3: Removida manipulação de cash point
- case 1:
- query_sql "SELECT `account_id`,`userid`,`group_id` FROM `login` WHERE `group_id` = 1",.@AccountId$,.@Userid$,.@GroupId;
- if(!.@GroupId) {
- mes "Porteira Vip Premium";
- mes "Não foi encontrada nenhuma conta Vip apartir do ^BB0000group_id 1^000000";
- break;
- }
- mes "======================";
- for (.@i = 0; .@i < getarraysize(.@GroupId); ++.@i) {
- mes "^777777ID:^000000 "+.@AccountId$[.@i];
- mes "^777777Login:^000000 "+.@Userid$[.@i];
- mes "======================";
- }
- break;
- case 2:
- mes "Porteira Vip Premium";
- mes "Por favor digite o ID ou login para verificar os dias vip na conta";
- next;
- input .@Account$;
- query_sql "SELECT `account_id` FROM `login` WHERE `userid`='"+.@Account$+"' OR `account_id`='"+.@Account$+"'",.@AccountCheck;
- if (!.@AccountCheck) {
- mes "Porteira Vip Premium";
- mes "Conta inexistente.";
- break;
- }
- else {
- query_sql "SELECT DATE_FORMAT(`dt_vip`, '%d/%m/%Y') FROM `login` WHERE `account_id`='"+.@Account$+"' OR `userid`='"+.@Account$+"'",.@VipDays$;
- if (.@VipDays$ == "") {
- mes "Porteira Vip Premium";
- mes "A conta '^0000FF"+.@Account$+"^000000' não possui status Vip.";
- break;
- }
- else {
- mes "Porteira Vip Premium";
- mes "A conta Vip de '^0000FF"+.@Account$+"^000000' é válida até o dia ^BB0000"+.@VipDays$+"^000000.";
- break;
- }
- }
- case 3:
- mes "Porteira Vip Premium";
- mes "Por favor digite o ID ou login para adicionar os dias vip na conta";
- next;
- input .@GetAccount$;
- query_sql "SELECT `account_id`,`group_id` FROM `login` WHERE `userid`='"+.@GetAccount$+"' OR `account_id`='"+.@GetAccount$+"'",.@AccountCheck,.@GroupCheck;
- if (!.@AccountCheck) {
- mes "Porteira Vip Premium";
- mes "Conta inexistente.";
- break;
- }
- mes "Porteira Vip Premium";
- mes "Quantos dias vip?";
- next;
- input .@GetVipTime;
- if (.@GroupCheck > 9) {
- mes "Porteira Vip Premium";
- mes "^FF0000Não é possível adicionar Vip a conta^000000 "+.@GetAccount$+".";
- mes "^FF0000Porque ela é uma conta Administrativa^000000!";
- break;
- }
- else if (.@GroupCheck == 1) {
- mes "Porteira Vip Premium";
- mes "Esta conta já possui status Vip.";
- mes "Deseja almentar mais "+.@GetVipTime+" dias vip a conta?";
- next;
- switch(select("Adicionar VIP:Cancelar")) {
- case 1:
- query_sql "UPDATE `login` SET `group_id` = '1', `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+.@GetVipTime+" DAY) WHERE `group_id` = '1' AND `account_id`='"+.@GetAccount$+"' OR `userid`='"+.@GetAccount$+"'";
- mes "Porteira Vip Premium";
- mes "Foi adicionado ^FF0000"+.@GetVipTime+"^000000 dias vip na conta ^0000FF"+.@GetAccount$+"^000000.";
- break;
- case 2:
- break;
- }
- break;
- }
- else {
- query_sql "UPDATE `login` SET `group_id` = '1', `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+.@GetVipTime+" DAY) WHERE `group_id` = '0' AND `account_id`='"+.@GetAccount$+"' OR `userid`='"+.@GetAccount$+"'";
- mes "Porteira Vip Premium";
- mes "Foi adicionado ^FF0000"+.@GetVipTime+"^000000 dias vip na conta ^0000FF"+.@GetAccount$+"^000000.";
- break;
- }
- case 4:
- mes "Porteira Vip Premium";
- mes "Por favor digite o ID ou login para Remover os dias vip na conta";
- next;
- input .@VipRemove$;
- query_sql "SELECT `account_id`,`group_id` FROM `login` WHERE `userid`='"+.@VipRemove$+"' OR `account_id`='"+.@VipRemove$+"'",.@RemoveCheck,.@VipCheck;
- if (!.@RemoveCheck) {
- mes "Porteira Vip Premium";
- mes "Conta inexistente.";
- break;
- }
- if (.@VipCheck > 9) {
- mes "Porteira Vip Premium";
- mes "^FF0000Não é possível remover Vip da conta^000000 "+.@VipRemove$+".";
- mes "^FF0000Porque ela é uma conta Administrativa^000000!";
- break;
- }
- else if (.@VipCheck == 1) {
- mes "Porteira Vip Premium";
- mes "Tem certesa que deseja remover os dias vips da conta "+.@VipRemove$+"?";
- next;
- switch(select("Tenho Sim:Cancelar")) {
- case 1:
- query_sql "UPDATE `login` SET `group_id` = 0, `dt_vip` = NULL WHERE `group_id` = '1' AND `account_id`='"+.@VipRemove$+"' OR `userid`='"+.@VipRemove$+"'";
- mes "Porteira Vip Premium";
- mes "Status Vip removido da conta ^0000FF"+.@VipRemove$+"^000000.";
- mes "Porém só será válido após o jogador deslogar.";
- break;
- case 2:
- break;
- }
- break;
- }
- else {
- mes "Porteira Vip Premium";
- mes "^FF0000Não é possível remover Vip da conta^000000 "+.@VipRemove$+".";
- mes "^FF0000Porque ela não contém status de Vip^000000!";
- break;
- }
- case 5:
- mes "Porteira Vip Premium";
- mes "Volte sempre que precisar de meus serviços.";
- close;
- }
- }
- }
- else {
- mes "Porteira Vip Premium";
- mes "Olá ^FF0000"+strcharinfo(0)+"^000000";
- mes "Me desculpe, mas atendo somente a";
- mes "usuários VIP PREMIUM.";
- mes "Se você deseja ser usuário VIP,";
- mes "Visite Nosso site www.ragnaroots.com.br/doacaovip e descubra como";
- mes "se tornar um.";
- close;
- // Remoção dos artigos referentes aos dados removidos
- }
- }
- kingston,157,167,4 duplicate(#vip_manager) Porteira Vip Premium#Evip1 4_F_NURSE
- morocc,160,98,4 duplicate(#vip_manager) Porteira Vip Premium#Evip2 4_F_NURSE
- geffen,128,62,4 duplicate(#vip_manager) Porteira Vip Premium#Evip3 4_F_NURSE
- payon,168,228,4 duplicate(#vip_manager) Porteira Vip Premium#Evip4 4_F_NURSE
- alberta,33,240,4 duplicate(#vip_manager) Porteira Vip Premium#Evip5 4_F_NURSE
- izlude,125,118,4 duplicate(#vip_manager) Porteira Vip Premium#Evip6 4_F_NURSE
- aldebaran,146,119,4 duplicate(#vip_manager) Porteira Vip Premium#Evip7 4_F_NURSE
- xmas,157,134,4 duplicate(#vip_manager) Porteira Vip Premium#Evip8 4_F_NURSE
- comodo,201,145,4 duplicate(#vip_manager) Porteira Vip Premium#Evip9 4_F_NURSE
- yuno,165,186,4 duplicate(#vip_manager) Porteira Vip Premium#Evip10 4_F_NURSE
- amatsu,190,140,4 duplicate(#vip_manager) Porteira Vip Premium#Evip11 4_F_NURSE
- gonryun,164,119,4 duplicate(#vip_manager) Porteira Vip Premium#Evip12 4_F_NURSE
- umbala,101,169,4 duplicate(#vip_manager) Porteira Vip Premium#Evip13 4_F_NURSE
- louyang,223,120,4 duplicate(#vip_manager) Porteira Vip Premium#Evip14 4_F_NURSE
- ayothaya,142,103,4 duplicate(#vip_manager) Porteira Vip Premium#Evip15 4_F_NURSE
- einbroch,84,201,4 duplicate(#vip_manager) Porteira Vip Premium#Evip16 4_F_NURSE
- lighthalzen,152,110,4 duplicate(#vip_manager) Porteira Vip Premium#Evip17 4_F_NURSE
- hugel,105,152,4 duplicate(#vip_manager) Porteira Vip Premium#Evip18 4_F_NURSE
- rachel,165,135,4 duplicate(#vip_manager) Porteira Vip Premium#Evip19 4_F_NURSE
- veins,221,141,4 duplicate(#vip_manager) Porteira Vip Premium#Evip20 4_F_NURSE
- moscovia,215,218,4 duplicate(#vip_manager) Porteira Vip Premium#Evip21 4_F_NURSE
- brasilis,211,162,4 duplicate(#vip_manager) Porteira Vip Premium#Evip22 4_F_NURSE
- new_1-1,44,112,6 duplicate(#vip_manager) Porteira Vip Premium#Evip23 4_F_NURSE
- // --------------------------------------------------------------------------------
- - script GerenciadorVip -1,{
- OnPCLoginEvent:
- if (getgroupid() == 0) {
- query_sql "SELECT (`dt_vip` IS NULL OR `dt_vip` < CURDATE()) FROM `login` WHERE `account_id` = "+getcharid(3);
- dispbottom "Torne-se um(a) jogador(a) hoje mesmo!";
- end;
- }
- if (getgroupid() == 1) {
- query_sql "UPDATE `login` SET `group_id`= 0 WHERE `group_id` = 1 AND (`dt_vip` IS NULL OR `dt_vip` < CURDATE())";
- query_sql "SELECT DATE_FORMAT(`dt_vip`, '%d/%m/%Y') FROM `login` WHERE `account_id` = "+getcharid(3), @OffVip$;
- dispbottom "Sua conta Vip é válida até o dia "+@OffVip$+"";
- end;
- }
- if (getgroupid() > 9) {
- end;
- }
- }