Jump to content

Ayuda con script cuentas premium


negroronald

Recommended Posts


  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  13
  • Reputation:   0
  • Joined:  04/18/14
  • Last Seen:  

Hola bueno tengo un npc de cuentas premium pero cuando compro me dice ya tiene scuentas premiun y cuando voy a la tienda premium no dice que no tengo cuenta premiun no entra informacion ala sql creo ??? me podrian ayudr por favor

//*****************************************************************************
/*

,
{
	id: 2
	name: "Premium"
	inherit: ( "Jugador" ) 
	level: 1
	commands: {
	// PONER COMANDOS PREMIUM 
		
		mobsearch:[true, false]
		dye:[true, false]
		hairstyle:[true, false]
		haircolor:[true, false]
		
	}
	log_commands: true
	
permissions: 
{
// *********************************************************************
		can_trade: true //HACER TRADE
		can_party: true //HACER PARTY
		disable_commands_when_dead: true //DESACTIVAR COMANDOS CUANDO MUEREN
// ********************************************************************* 

}
}

*/

//************************ [ TIEMDA PREMIUM ] *********************************

-	shop	PremiunShop	-1,12622:1000000,5452:2000000,5451:3000000,5453:5000000,18503:7000000

//*****************************************************************************

prontera,144,165,6	script	Cuentas Premium#4321	423,{

	set .@name$ , "[ ^339900 Cuentas Premium ^000000 ]";
	
	//**************************************************************************
	if( getsecurity() )
	{
		mes "[Seguridad de cuenta]";
		mes "Imposible de acceder a este npc . Cuenta bloquiada con @seguridad";
		close;
	}
	//**************************************************************************
	
 	set .@Cost, 60000; // Cash point que requiere para comprar cuenta premium
	
	set .@Time, 4 * 7 * 24 * 60 * 60; // Tiempo en segundos = 4 semanas, 7 dias apra la semana, 24 horas para el dia, 60 minutos para la hora, 60 segundos para el minuto = 1 mes.
	set .@Time$, "1 MES";

	mes .@name$; 
	mes "Hola ^FFA500" + (Sex?"Sr ":"Srt ") + " "+ strcharinfo(0) +"^000000";
	mes "^ff0000-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-^000000";
	mes "Cuentas premium esta pensado para donadores";
	mes "cuales obtendran cosas como comandos,aumento de drop y exp";
	if(getgmlevel() >= 1){
	next;
	dispbottom "^FF0000[> Cuenta premium <]: ERES GM NO PUEDES COMPRAR CUENTA PREMIUM^000000";
	close;
	end;}
	
	switch(select(" ^6633ff [^000000 > ^6633ff] ^000000 ^6633ffComprar una cuenta premium^000000 : ^669900 [^000000 > ^669900] ^000000 ^669900Que obtengo con ser premium?^000000 : ^ff0000 [^000000 > ^ff0000] ^000000 ^ff0000Mi estado de cuenta premium?^000000 : ^cc0066 [^000000 > ^cc0066] ^000000 ^cc0066Comprar en tienda premiium^000000")) {
		case 1:
		next;
		mes .@name$;
		if( isPremium() == 1 )
       	mes "Quieres expandir tu cuenta premium?";
        	else
   	 	mes "Quieres tener una cuenta premium?";

		mes "Tiempo Premium ^FF0000" + .@Time$ + "^000000";
		mes "^ff0000-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-^000000";
		mes "Tienes que pagar un";
		mes "Costo : ^FF0000" + .@Cost + "^000000 Cash Points.";
		next;
		if( select("^10B2D2 [ > ] ^000000 Si:^10B2D2 [ > ] ^000000 No") == 2 ) close;

		if( #CASHPOINTS < .@Cost )
		{
		mes .@name$; 
		mes "";
		mes "No tienes suficientes Cash Points.";
		close;
		}

		if( isPremium() == 1 )
			set #Premium_Tick, #Premium_Tick + .@Time; // Time Extension
		else
			set #Premium_Tick, gettimetick(2) + .@Time; // New Premium Account
		set #CASHPOINTS, #CASHPOINTS - .@Cost;

		mes .@name$;
		mes "Listo";
		announce "~ " + (Sex?"El ":"La ") + " [ "+ strcharinfo(0) +" ] ha comprado una cuenta premium de  [ 1 mes ] ~",bc_all,0xff9900;
		mes "Recuerda tu cuenta premium expira en : ^FF0000" + callfunc("Time2Str",#Premium_Tick) + "^000000.";
		close;
		
	case 2:
		next;
		mes .@name$;
		mes "^ff0000-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-^000000";
		mes "Obtienes el ^33990050% adicional de Exp al matar mob^000000";
		mes "^ff0000-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-^000000";
		mes "Tambien obtienes un ^33990010% mas de Drop en todos los drop^000000";
		mes "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-";
		mes "Adicional algunos comandos como (^339900mobsearch^000000) - (^339900hstyle^000000) - (^339900dye^000000) - (^339900hcolor^000000)";
		mes "^ff0000-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-^000000";
		close;
		
	case 3:
		next;
		mes .@name$;
		if( isPremium() != 1 ) { 
		mes "Tu no has comprado cuenta premium, disculpa"; 
		close; 
		}
		mes "Recuerda tu cuenta premium expira en : ^FF0000" + callfunc("Time2Str",#Premium_Tick) + "^000000.";
		close;
		
	case 4:
		next;
		 mes "[^339900 Tienda Premium ^000000]";
		 if( isPremium() != 1 ) {
		mes "No tienes cuenta premium, no puedes entrar en la tienda"; 
		close; 
		}
		mes "Cierra esta ventana y te llevo a la tienda premium";
		close2;
		callshop "PremiunShop",1;
		end;
		
	}
	
	
OnInit:
	waitingroom "",0;
OnTimer0500:
	setarray .@RoomDisplay$,"Cuenta Premium","60k Cashpoint";
	delwaitingroom;
	waitingroom .@RoomDisplay$[rand(0,2)],0;
	initnpctimer;

}
Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  15
  • Topics Per Day:  0.00
  • Content Count:  59
  • Reputation:   19
  • Joined:  01/03/13
  • Last Seen:  

Corrígeme si me equivoco pero creo que lo que pretendes es crear una base de datos SQL que registre a los usuarios premium y el tiempo en el que expira sus cuentas, ¿verdad?

 

Sí no es así, te estás complicando mucho la vida ya que siempre es mucho más fácil manejar ese tipo de sistemas desde las tablas SQL y scripts.

 

Sí es el caso, te recomiendo crear una tabla SQL que registre el id de cuenta del usuario, la fecha en la que se ha producido la compra de la cuenta premium y, por último, la fecha en la que expirará dicha cuenta premium. Después es tan simple como crear un script que introduzca la información en la tabla mediante query_sql y que cuando la fecha en la que expira la cuenta supere o sea igual al tiempo actual del servidor se elimine de la tabla. A la vez que si detecta que la id del usuario se encuentra en la tabla SQL de los user premium te otorgue los beneficios por ser premium.

 

Si no sabes como hacerlo o no has entendido lo q quería decir avísame por mensaje privado o a través de este topic explicando detalladamente en qué te puedo ayudar.

Link to comment
Share on other sites


  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  13
  • Reputation:   0
  • Joined:  04/18/14
  • Last Seen:  

OK muchas gracias me ayudo y ya lo hize puden cerrar el tema gracias

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...