Maximo de objetos.
#1

Hola! un cordial saludo para todos, solicito un poco de ayuda para modificar un Filterscrip que descargue, es para agregar neones a los vehiculos, pero el problema esta en que solo quiero que se pueda usar solo dos neones en el vehiculo, porque en este FS se pueden agregar todos los neones que hay en el menu simultaneamente. Sera que es posible poner una especie de "MaxObject"?

Aqui esta el codigo:

Код:
if(dialogid == 8899)
	{
		if(response)
		{
   		if(listitem == 0)
			{
			//blue
			SetPVarInt(playerid, "Status", 1);
            SetPVarInt(playerid, "neon", CreateObject(18648,0,0,0,0,0,0));
            SetPVarInt(playerid, "neon1", CreateObject(18648,0,0,0,0,0,0));
            AttachObjectToVehicle(GetPVarInt(playerid, "neon"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
            AttachObjectToVehicle(GetPVarInt(playerid, "neon1"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
            SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

            }
			if(listitem == 1)
			{
		 	//red
    		SetPVarInt(playerid, "Status", 1);
    		SetPVarInt(playerid, "neon2", CreateObject(18647,0,0,0,0,0,0));
		 	SetPVarInt(playerid, "neon3", CreateObject(18647,0,0,0,0,0,0));
	 		AttachObjectToVehicle(GetPVarInt(playerid, "neon2"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
        	AttachObjectToVehicle(GetPVarInt(playerid, "neon3"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
         	SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

            }
			if(listitem == 2)
			{
			//green
  			SetPVarInt(playerid, "Status", 1);
      	    SetPVarInt(playerid, "neon4", CreateObject(18649,0,0,0,0,0,0));
      	    SetPVarInt(playerid, "neon5", CreateObject(18649,0,0,0,0,0,0));
       	   	AttachObjectToVehicle(GetPVarInt(playerid, "neon4"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
  	  		AttachObjectToVehicle(GetPVarInt(playerid, "neon5"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
   	 	 	SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

			}
			if(listitem == 3)
			{
			//white
			SetPVarInt(playerid, "Status", 1);
   			SetPVarInt(playerid, "neon6", CreateObject(18652,0,0,0,0,0,0));
      		SetPVarInt(playerid, "neon7", CreateObject(18652,0,0,0,0,0,0));
        	AttachObjectToVehicle(GetPVarInt(playerid, "neon6"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
     	   	AttachObjectToVehicle(GetPVarInt(playerid, "neon7"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
      	   	SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

			}
			if(listitem == 4)
			{
			//pink
   			SetPVarInt(playerid, "Status", 1);
      		SetPVarInt(playerid, "neon8", CreateObject(18651,0,0,0,0,0,0));
        	SetPVarInt(playerid, "neon9", CreateObject(18651,0,0,0,0,0,0));
         	AttachObjectToVehicle(GetPVarInt(playerid, "neon8"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
          	AttachObjectToVehicle(GetPVarInt(playerid, "neon9"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
          	SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

			}
			if(listitem == 5)
			{
			//yellow
			SetPVarInt(playerid, "Status", 1);
  			SetPVarInt(playerid, "neon10", CreateObject(18650,0,0,0,0,0,0));
	   		SetPVarInt(playerid, "neon11", CreateObject(18650,0,0,0,0,0,0));
   	  		AttachObjectToVehicle(GetPVarInt(playerid, "neon10"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
     	  	AttachObjectToVehicle(GetPVarInt(playerid, "neon11"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
       	 	SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

			}
			if(listitem == 6)
			{
			//police
 			SetPVarInt(playerid, "Status", 1);
    		SetPVarInt(playerid, "neon12", CreateObject(18646,0,0,0,0,0,0));
      		SetPVarInt(playerid, "neon13", CreateObject(18646,0,0,0,0,0,0));
 	      	AttachObjectToVehicle(GetPVarInt(playerid, "neon12"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
		    AttachObjectToVehicle(GetPVarInt(playerid, "neon13"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
 	    	SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");

			}
  			if(listitem == 7)
			{
   			SetPVarInt(playerid, "Status", 1);
      		SetPVarInt(playerid, "interior", CreateObject(18646,0,0,0,0,0,0));
    	   	SetPVarInt(playerid, "interior1", CreateObject(18646,0,0,0,0,0,0));
      	  	AttachObjectToVehicle(GetPVarInt(playerid, "interior"), GetPlayerVehicleID(playerid), 0, -0.0, 0, 2.0, 2.0, 3.0);
       	 	AttachObjectToVehicle(GetPVarInt(playerid, "interior1"), GetPlayerVehicleID(playerid), 0, -0.0, 0, 2.0, 2.0, 3.0);
			SendClientMessage(playerid, 0xFFFFFFAA, "Luces interiores instaladas.");

			}
  			if(listitem == 8)
			{
			//back
   			SetPVarInt(playerid, "Status", 1);
   			SetPVarInt(playerid, "back", CreateObject(18646,0,0,0,0,0,0));
      		SetPVarInt(playerid, "back1", CreateObject(18646,0,0,0,0,0,0));
      		AttachObjectToVehicle(GetPVarInt(playerid, "back"), GetPlayerVehicleID(playerid), -0.0, -1.5, -1, 2.0, 2.0, 3.0);
      		AttachObjectToVehicle(GetPVarInt(playerid, "back1"), GetPlayerVehicleID(playerid), -0.0, -1.5, -1, 2.0, 2.0, 3.0);
      		SendClientMessage(playerid, 0xFFFFFFAA, "Neon trasero instalado.");

			}
         	if(listitem == 9)
			{
			//front
   			SetPVarInt(playerid, "Status", 1);
   			SetPVarInt(playerid, "front", CreateObject(18646,0,0,0,0,0,0));
      		SetPVarInt(playerid, "front1", CreateObject(18646,0,0,0,0,0,0));
   	    	AttachObjectToVehicle(GetPVarInt(playerid, "front"), GetPlayerVehicleID(playerid), -0.0, 1.5, -0.6, 2.0, 2.0, 3.0);
     	   	AttachObjectToVehicle(GetPVarInt(playerid, "front1"), GetPlayerVehicleID(playerid), -0.0, 1.5, -0.6, 2.0, 2.0, 3.0);
       	  	SendClientMessage(playerid, 0xFFFFFFAA, "Neon delantero instalado.");

			}
       	 	if(listitem == 10)
			{
   			//undercover
  			SetPVarInt(playerid, "Status", 1);
	    	SetPVarInt(playerid, "undercover", CreateObject(18646,0,0,0,0,0,0));
	 	   	SetPVarInt(playerid, "undercover1", CreateObject(18646,0,0,0,0,0,0));
 		    AttachObjectToVehicle(GetPVarInt(playerid, "undercover"), GetPlayerVehicleID(playerid), -0.5, -0.2, 0.8, 2.0, 2.0, 3.0);
 	 	   	AttachObjectToVehicle(GetPVarInt(playerid, "undercover1"), GetPlayerVehicleID(playerid), -0.5, -0.2, 0.8, 2.0, 2.0, 3.0);
    	   	SendClientMessage(playerid, 0xFFFFFFAA, "Luces de sombra instaladas.");

			}
		   	if(listitem == 11)
			{
			//remove neon
            DestroyObject(GetPVarInt(playerid, "neon"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon1"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon2"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon3"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon4"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon5"));
			DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon6"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon7"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon8"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon9"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon10"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon11"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon12"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "neon13"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "interior"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "interior1"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "back"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "back1"));
            DeletePVar(playerid, "Status");
			DestroyObject(GetPVarInt(playerid, "front"));
			DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "front1"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "undercover"));
            DeletePVar(playerid, "Status");
            DestroyObject(GetPVarInt(playerid, "undercover1"));

            DeletePVar(playerid, "Status");


	 	      }
		 }
    }
    return 0;
}
Gracias de antemano.
Reply
#2

pawn Код:
#define MaxObjects 2 //en el top del FS

new Objects[MAX_PLAYERS];
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    if(Objects[playerid] <= MaxObjects)
    {
        if(dialogid == 8899)
        {
            if(response)
            {
                if(listitem == 0)
                {
                    //blue
                    SetPVarInt(playerid, "Status", 1);
                    SetPVarInt(playerid, "neon", CreateObject(18648,0,0,0,0,0,0));
                    SetPVarInt(playerid, "neon1", CreateObject(18648,0,0,0,0,0,0));
                    AttachObjectToVehicle(GetPVarInt(playerid, "neon"), GetPlayerVehicleID(playerid), -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                    AttachObjectToVehicle(GetPVarInt(playerid, "neon1"), GetPlayerVehicleID(playerid), 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
                    SendClientMessage(playerid, 0xFFFFFFAA, "Neon instalado.");
                    Objects[playerid]++;
                }
            }
        }
        //asi con todos
    }
    return 1;
}
Reply
#3

Gracias hermano, pero no me funciono... sigo con el mismo problema. Pero viendo que lo que yo propuse anteriormente probablemente no se puede hacer, seria posible que solo se pueda usar un neon? cuando se instalara otro neon en el carro, el que antes estaba puesto se borrara, intente eso, pero me mostraba errores y ademas no se borraban los neones, pero sera que se puede hacer eso?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)