Modificación de este comando.
#1

Tengo este comando para comprar casa y funciona genial, pero le quiero hacer cierta modificación... quiero que si tienes la variable de InformacionJugador_[playerid][pCasa][0] en 0 osea que no tiene casa y la compras se te ponga la ID de la casa, bien, eso funciona, acá toca el tema, quiero que si tienes esa variable una casa y pongas el comando si tienes premium InformacionJugador_[playerid][pPremium] en 1 se guarde en la variable InformacionJugador_[playerid][pCasa][1] que es la 2 casa del jugador, si no tienes premium que te diga que necesitas premium para tener 2 casas.

Код:
CMD:comprarcasa(playerid, params[])
{
	for(new c = 0; c < sizeof(InformacionCasa_); c++)
	{
		if(IsPlayerInRangeOfPoint(playerid, 2.0, InformacionCasa_[c][cPosX], InformacionCasa_[c][cPosY], InformacionCasa_[c][cPosZ]))
		{
			if(InformacionCasa_[c][cEstado] == 1) return SendClientMessage(playerid, COLOR_ROJO, "* Ya esta propiedad tiene dueño.");
		    if(InformacionJugador_[playerid][pCasa][0] != -1 && InformacionJugador_[playerid][pCasa][1] != -1) return SendClientMessage(playerid, COLOR_ROJO, "* Ya tienes 2 propiedades, si quieres tener más compra membresía Premium.");
			if(GetPlayerMoney(playerid) < InformacionCasa_[c][cPrecio]){SendClientMessage(playerid, COLOR_ROJO, "* No tienes dinero suficiente para comprar esta propiedad."); return 1;}
		    if(InformacionJugador_[playerid][pNivel] < InformacionCasa_[c][cNivel]) return SendClientMessage(playerid, COLOR_ROJO,"* No tienes el nivel para comprar esta propiedad.");

			QuitarDineroPlayer_(playerid, InformacionCasa_[c][cPrecio]), InformacionCasa_[c][cEstado] = 1;
			strmid(InformacionCasa_[c][cPropietario], NombreJugador(playerid), 0, strlen(NombreJugador(playerid)), 255);

            InformacionCasa_[c][cMapIco] = CreateDynamicMapIcon(InformacionCasa_[c][cPosX], InformacionCasa_[c][cPosY], InformacionCasa_[c][cPosZ], 32, 0, -1, -1, c, 50.0);

            if(InformacionJugador_[playerid][pCasa][0] != 0)
            {
			   InformacionJugador_[playerid][pCasa][0] = InformacionCasa_[c][cSQLID];
            }
            else if(InformacionJugador_[playerid][pCasa][1] != 0)
            {
				InformacionJugador_[playerid][pCasa][1] = InformacionCasa_[c][cSQLID];
            }
			
			new
			    Query[90];
			format(Query, 90, "UPDATE casas SET cPropietario = '%s' WHERE cSQLID = %d", InformacionCasa_[c][cPropietario], InformacionCasa_[c][cSQLID]);
			mysql_function_query(MySQL, Query, false, "OnQueryFinish", "ii", 0, playerid), GameTextForPlayer(playerid, "~g~Comprada", 1000, 1);
			
			SendClientMessage(playerid, COLOR_AMARILLO, "* ¡Felicidades!"#CBLANCO" ahora tienes una propiedad, para más información /ayuda casas.");
			GuardarJugador_(playerid), GuardarCasa_©, InformacionCasa_[c][cPickup] = CreateDynamicPickup(19522, 1, InformacionCasa_[c][cPosX], InformacionCasa_[c][cPosY], InformacionCasa_[c][cPosZ]);
			ActualizarTextoCasa©;
			return 1;
		}
	}
	SendClientMessage(playerid, COLOR_ROJO, "* No estás cerca de ninguna propiedad.");
	return 1;
}
Reply
#2

Con lo que dices serнa mбs o menos asн:

Код:
if(InformacionJugador_[playerid][pPremium] == 0 && InformacionJugador_[playerid][pCasa][0] != -1) return SendClientMessage(playerid, COLOR_ROJO, "* Ya tienes una propiedad, si quieres tener mбs compra membresнa Premium.");
if(InformacionJugador_[playerid][pPremium] == 1 && InformacionJugador_[playerid][pCasa][0] != -1 && InformacionJugador_[playerid][pCasa][1] != -1) return SendClientMessage(playerid, COLOR_ROJO, "* Ya tienes 2 propiedades, si quieres tener mбs compra membresнa Premium.");
Reply
#3

Quote:
Originally Posted by LatinZ
Посмотреть сообщение
Con lo que dices serнa mбs o menos asн:

Код:
if(InformacionJugador_[playerid][pPremium] == 0 && InformacionJugador_[playerid][pCasa][0] != -1) return SendClientMessage(playerid, COLOR_ROJO, "* Ya tienes una propiedad, si quieres tener mбs compra membresнa Premium.");
if(InformacionJugador_[playerid][pPremium] == 1 && InformacionJugador_[playerid][pCasa][0] != -1 && InformacionJugador_[playerid][pCasa][1] != -1) return SendClientMessage(playerid, COLOR_ROJO, "* Ya tienes 2 propiedades, si quieres tener mбs compra membresнa Premium.");
Bien, y si tiene membresía premium y puede comprar 2 casas, como hago para asignarle a la cuenta la ID de la casa en el slot 2 en vez del 1 otra vez, lo había hecho así y no funciona.

if(InformacionJugador_[playerid][pCasa][0] != 0)
{
InformacionJugador_[playerid][pCasa][0] = InformacionCasa_[c][cSQLID];
}
else if(InformacionJugador_[playerid][pCasa][1] != 0)
{
InformacionJugador_[playerid][pCasa][1] = InformacionCasa_[c][cSQLID];
}
Reply
#4

Код:
if(InformacionJugador_[playerid][pCasa][0] == 0)
{
InformacionJugador_[playerid][pCasa][0] = InformacionCasa_[c][cSQLID];
}
else if(InformacionJugador_[playerid][pCasa][1] == 0)
{
InformacionJugador_[playerid][pCasa][1] = InformacionCasa_[c][cSQLID];
}
!= si no es igual quй.
== igual quй.
Reply
#5

Quote:
Originally Posted by LatinZ
Посмотреть сообщение
Код:
if(InformacionJugador_[playerid][pCasa][0] == 0)
{
InformacionJugador_[playerid][pCasa][0] = InformacionCasa_[c][cSQLID];
}
else if(InformacionJugador_[playerid][pCasa][1] == 0)
{
InformacionJugador_[playerid][pCasa][1] = InformacionCasa_[c][cSQLID];
}
!= si no es igual quй.
== igual quй.
Muchísimas gracias, +REP.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)