Jump to content
  • 0

Sistema vip


Question

Posted (edited)

Fala galera !

Estou usando o seguinte script que peguei no fórum Brathena.

 

function	script	vip	{

set $nivelVip, 1;
set $diasVip, 1;
set $verificaVip, 1;

if (getgroupid() == 1) goto extender;

query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

dispbottom "Vip inserido com sucesso! Relogue seu personagem para ativá-lo.";
end;

estender:

query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativá-lo.";
end;

}

//==========================================================================================================================
// Função que adiciona 7 dias Vip ao usuário
//==========================================================================================================================

function	script	vip7	{

set $nivelVip, 1;
set $diasVip, 7;
set $verificaVip, 1;

if (getgroupid() == 1) goto extender;

query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

dispbottom "Vip inserido com sucesso! Relogue seu personagem para ativá-lo.";
end;

estender:

query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativá-lo.";
end;

}

//==========================================================================================================================
// Função que adiciona 15 dias Vip ao usuário
//==========================================================================================================================

function	script	vip30	{

set $nivelVip, 1;
set $diasVip, 30;
set $verificaVip, 1;

if (getgroupid() == 1) goto extender;

query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

dispbottom "Vip inserido com sucesso! Relogue seu personagem para ativá-lo.";
end;

estender:

query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativá-lo.";
end;

}

//==========================================================================================================================
// Função que controla a data de término da conta vip e anúncios ao logar
//==========================================================================================================================

-	script	GerenciadorVip	FAKE_NPC,{

OnPCLoginEvent:

set @site$, "www.nwpro.com";

query_sql "UPDATE `login` SET `group_id`= 0 WHERE `group_id` = "+$nivelVip+" AND (`dt_vip` IS NULL OR `dt_vip` < CURDATE())";
query_sql "SELECT (`dt_vip` IS NULL OR `dt_vip` < CURDATE()) FROM `login` WHERE `account_id` = "+getcharid(3), @verificaVip;

if (@verificaVip) {

dispbottom "Torne-se um(a) jogador(a) Vip e tenha benefícios esclusivos!";
dispbottom "Acesse "+@site$+" e saiba mais!";
end;

}

query_sql "SELECT DATE_FORMAT(`dt_vip`, '%d/%m/%Y') FROM `login` WHERE `account_id` = "+getcharid(3), @dataVencimento$;

dispbottom "Sua conta Vip é válida até o dia "+@dataVencimento$+"";
end;

}

SQL:

ALTER TABLE `login` ADD `dt_vip` INT(4) NOT NULL DEFAULT '0';

Item_db:

7711, 'Ticket_VIP[1]', 'Ticket VIP[1]', 0, 10000, NULL, 10, NULL, NULL, NULL, NULL, 4294967295, 7, 2, NULL, NULL, NULL, NULL, NULL, 'callfunc "vip";', NULL, NULL);

7712, 'Ticket_VIP[7]', 'Ticket VIP[7]', 0, 10000, NULL, 10, NULL, NULL, NULL, NULL, 4294967295, 7, 2, NULL, NULL, NULL, NULL, NULL, 'callfunc "vip7";', NULL, NULL);

7713, 'Ticket_VIP[30]', 'Ticket VIP[30]', 0, 10000, NULL, 10, NULL, NULL, NULL, NULL, 4294967295, 7, 2, NULL, NULL, NULL, NULL, NULL, 'callfunc "vip30";', NULL, NULL);

Quando uso o item aparece a mensagem:

"Vip inserido com sucesso! Relogue seu personagem para ativá-lo."

Porém não adiciona os dias vip, não aparece nenhuma alteração no map_server e  nada.

 

Edited by spawnn

4 answers to this question

Recommended Posts

  • 0
Posted

No meu servidor rathena eu atualizei o script, testa ele

//==========================================================================================================================
//				          Função que adiciona 15 dias Vip ao usuário
//==========================================================================================================================

function	script	vip1	{

set $nivelVip, 1;
set $diasVip, 1;
set $verificaVip, 1;

	//if (getgmlevel() == 1) goto extender;
	if (getgmlevel() > 0)
	{
		getitem 30015,1;
		mes "[Sistema VIP]";
		mes "Você já é um Jogador VIP.";
		mes " ";
		mes "^696969(Ticket VIP devolvido)^000000";
		close;
	}
	
	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

	dispbottom "^1874CDVip inserido com sucesso!^000000 Relogue seu personagem para ativa-lo.";
	mes "Vip inserido com sucesso! Relogue seu personagem para ativa-lo.";
	mes "Obrigado por ajudar o nosso Servidor!";
	sleep2 2000;
	close;
	end;

estender:

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

	dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativa-lo.";
	end;

}
//==========================================================================================================================
//				          Função que adiciona 15 dias Vip ao usuário
//==========================================================================================================================

function	script	vip15	{

set $nivelVip, 1;
set $diasVip, 15;
set $verificaVip, 1;

	//if (getgmlevel() == 1) goto extender;
	if (getgmlevel() > 0)
	{
		getitem 30002,1;
		mes "[Sistema VIP]";
		mes "Você já é um Jogador VIP.";
		mes " ";
		mes "^696969(Ticket VIP devolvido)^000000";
		close;
	}

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

	dispbottom "^1874CDVip inserido com sucesso!^000000 Relogue seu personagem para ativa-lo.";
	mes "Vip inserido com sucesso! Relogue seu personagem para ativa-lo.";
	mes "Obrigado por ajudar o nosso Servidor!";
	sleep2 2000;
	close;
	end;

estender:

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

	dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativa-lo.";
	end;

}

//==========================================================================================================================
//				          Função que adiciona 30 dias Vip ao usuário
//==========================================================================================================================

function	script	vip30	{

set $nivelVip, 1;
set $diasVip, 30;
set $verificaVip, 1;

	//if (getgmlevel() == 1) goto extender;
	if (getgmlevel() > 0)
	{
		getitem 30003,1;
		mes "[Sistema VIP]";
		mes "Você já é um Jogador VIP.";
		mes " ";
		mes "^696969(Ticket VIP devolvido)^000000";
		close;
	}

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

	dispbottom "^1874CDVip inserido com sucesso!^000000 Relogue seu personagem para ativa-lo.";
	mes "Vip inserido com sucesso! Relogue seu personagem para ativa-lo.";
	mes "Obrigado por ajudar o nosso Servidor!";
	sleep2 2000;
	close;
	end;

estender:

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

	dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativa-lo.";
	end;

}

//==========================================================================================================================
//			    Função que controla a data de término da conta vip e anúncios ao logar
//==========================================================================================================================

-	script	GerenciadorVip	FAKE_NPC,{

		OnPCLoginEvent:	

set @site$, "www.celestero.tk";

		query_sql "UPDATE `login` SET `group_id`= 0 WHERE `group_id` = "+$nivelVip+" AND (`dt_vip` IS NULL OR `dt_vip` < CURDATE())";
		query_sql "SELECT (`dt_vip` IS NULL OR `dt_vip` < CURDATE()) FROM `login` WHERE `account_id` = "+getcharid(3), @verificaVip;

		if (@verificaVip) {

		dispbottom "Torne-se um(a) jogador(a) Vip e tenha benefícios esclusivos!";
		dispbottom "Acesse "+@site$+" e saiba mais!";
		end;

}

	query_sql "SELECT DATE_FORMAT(`dt_vip`, '%d/%m/%Y') FROM `login` WHERE `account_id` = "+getcharid(3), @dataVencimento$;

	dispbottom "Sua conta Vip é válida até o dia "+@dataVencimento$+"";
	end;

}

As funções são: vip1 , vip15 vip 30

  • 0
Posted
20 hours ago, luizragna said:

No meu servidor rathena eu atualizei o script, testa ele


//==========================================================================================================================
//				          Função que adiciona 15 dias Vip ao usuário
//==========================================================================================================================

function	script	vip1	{

set $nivelVip, 1;
set $diasVip, 1;
set $verificaVip, 1;

	//if (getgmlevel() == 1) goto extender;
	if (getgmlevel() > 0)
	{
		getitem 30015,1;
		mes "[Sistema VIP]";
		mes "Você já é um Jogador VIP.";
		mes " ";
		mes "^696969(Ticket VIP devolvido)^000000";
		close;
	}
	
	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

	dispbottom "^1874CDVip inserido com sucesso!^000000 Relogue seu personagem para ativa-lo.";
	mes "Vip inserido com sucesso! Relogue seu personagem para ativa-lo.";
	mes "Obrigado por ajudar o nosso Servidor!";
	sleep2 2000;
	close;
	end;

estender:

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

	dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativa-lo.";
	end;

}
//==========================================================================================================================
//				          Função que adiciona 15 dias Vip ao usuário
//==========================================================================================================================

function	script	vip15	{

set $nivelVip, 1;
set $diasVip, 15;
set $verificaVip, 1;

	//if (getgmlevel() == 1) goto extender;
	if (getgmlevel() > 0)
	{
		getitem 30002,1;
		mes "[Sistema VIP]";
		mes "Você já é um Jogador VIP.";
		mes " ";
		mes "^696969(Ticket VIP devolvido)^000000";
		close;
	}

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

	dispbottom "^1874CDVip inserido com sucesso!^000000 Relogue seu personagem para ativa-lo.";
	mes "Vip inserido com sucesso! Relogue seu personagem para ativa-lo.";
	mes "Obrigado por ajudar o nosso Servidor!";
	sleep2 2000;
	close;
	end;

estender:

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

	dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativa-lo.";
	end;

}

//==========================================================================================================================
//				          Função que adiciona 30 dias Vip ao usuário
//==========================================================================================================================

function	script	vip30	{

set $nivelVip, 1;
set $diasVip, 30;
set $verificaVip, 1;

	//if (getgmlevel() == 1) goto extender;
	if (getgmlevel() > 0)
	{
		getitem 30003,1;
		mes "[Sistema VIP]";
		mes "Você já é um Jogador VIP.";
		mes " ";
		mes "^696969(Ticket VIP devolvido)^000000";
		close;
	}

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(CURDATE(),INTERVAL "+$diasVip+" DAY) WHERE `group_id` = 0 AND `account_id` = "+getcharid(3);

	dispbottom "^1874CDVip inserido com sucesso!^000000 Relogue seu personagem para ativa-lo.";
	mes "Vip inserido com sucesso! Relogue seu personagem para ativa-lo.";
	mes "Obrigado por ajudar o nosso Servidor!";
	sleep2 2000;
	close;
	end;

estender:

	query_sql "UPDATE `login` SET `group_id` = "+$nivelVip+", `dt_vip` = DATE_ADD(`dt_vip`,INTERVAL "+$diasVip+" DAY) WHERE `group_id` = "+$nivelVip+" AND `account_id` = "+getcharid(3);

	dispbottom "Vip estendido por mais "+$diasVip+" dias! Relogue seu personagem para ativa-lo.";
	end;

}

//==========================================================================================================================
//			    Função que controla a data de término da conta vip e anúncios ao logar
//==========================================================================================================================

-	script	GerenciadorVip	FAKE_NPC,{

		OnPCLoginEvent:	

set @site$, "www.celestero.tk";

		query_sql "UPDATE `login` SET `group_id`= 0 WHERE `group_id` = "+$nivelVip+" AND (`dt_vip` IS NULL OR `dt_vip` < CURDATE())";
		query_sql "SELECT (`dt_vip` IS NULL OR `dt_vip` < CURDATE()) FROM `login` WHERE `account_id` = "+getcharid(3), @verificaVip;

		if (@verificaVip) {

		dispbottom "Torne-se um(a) jogador(a) Vip e tenha benefícios esclusivos!";
		dispbottom "Acesse "+@site$+" e saiba mais!";
		end;

}

	query_sql "SELECT DATE_FORMAT(`dt_vip`, '%d/%m/%Y') FROM `login` WHERE `account_id` = "+getcharid(3), @dataVencimento$;

	dispbottom "Sua conta Vip é válida até o dia "+@dataVencimento$+"";
	end;

}

As funções são: vip1 , vip15 vip 30

Apareceu o seguinte erro:

[Warning]: Unexpected type for argument 1. Expected label, got C_NAME
[Debug]: Data: variable name='extender' index=0
[Debug]: Function: goto
[Debug]: Source (NPC): FAKE_NPC (invisible/not on a map)
[Error]: buildin_goto: Not a label
[Debug]: Data: variable name='extender' index=0
[Debug]: Source (NPC): FAKE_NPC (invisible/not on a map)

 

  • 0
Posted

 

7 minutes ago, spawnn said:

Apareceu o seguinte erro:


[Warning]: Unexpected type for argument 1. Expected label, got C_NAME
[Debug]: Data: variable name='extender' index=0
[Debug]: Function: goto
[Debug]: Source (NPC): FAKE_NPC (invisible/not on a map)
[Error]: buildin_goto: Not a label
[Debug]: Data: variable name='extender' index=0
[Debug]: Source (NPC): FAKE_NPC (invisible/not on a map)

 

Troquei 

-	script	GerenciadorVip	FAKE_NPC,{

Por:

-	script	GerenciadorVip	-1,{

Aparece o balão npc que foi inserido porém não insere e não apresenta nenhum erro no emulador.

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...