Jump to content
  • 0

Sistema vip


Tupac

Question


  • Group:  Members
  • Topic Count:  43
  • Topics Per Day:  0.02
  • Content Count:  101
  • Reputation:   5
  • Joined:  12/04/16
  • Last Seen:  

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
Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  43
  • Topics Per Day:  0.02
  • Content Count:  101
  • Reputation:   5
  • Joined:  12/04/16
  • Last Seen:  

Resolvido: troquei "getgmlevel" por "getgroupid".

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  35
  • Topics Per Day:  0.01
  • Content Count:  107
  • Reputation:   27
  • Joined:  02/12/14
  • Last Seen:  

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

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  43
  • Topics Per Day:  0.02
  • Content Count:  101
  • Reputation:   5
  • Joined:  12/04/16
  • Last Seen:  

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)

 

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  43
  • Topics Per Day:  0.02
  • Content Count:  101
  • Reputation:   5
  • Joined:  12/04/16
  • Last Seen:  

 

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.

Link to comment
Share on other sites

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.

×
×
  • Create New...