Jump to content
Prosíme všetkých užívateľov, ktorý sa chcú opätovne pripojiť na discord aby znovu spárovali svoje účty kliknutím na "Discord" v navigácií a pripojili sa na server Read more... ×
  • 0
Ajtak

pomoc Ceny vozidla v autosalonu

Dotaz

Zdravím,
Když jsem přidával dnes nové vozidlo do jednoho auto salonu tak i když tam zadám cenu tak na serveru mi to dává 0 
Nevíte kde může být chyba ? 

Všechny vozidla jdou normálně s cenou jen to jedno vozidlo tam je prostě 0

enum SCars_Info
{
    Veh_Cost,
	Veh_IDs,
	Veh_SaloonID,
}

new SalonCars[][SCars_Info] =
{
	{8000000, 528, 1},
	{450000, 530, 1},
	{350000, 532, 1},
	{250000, 572, 1},
	{299000, 574, 1},
    
	{80000, 509, 2},
	{299999, 510, 2},

	{7000000, 567, 3},
	{5000000, 575, 3},
	{1350000, 576, 3},
	{4550000, 409, 3}, // toto je to vozidlo s cenou
    
    {4500000, 426, 4},
	{4700000, 434, 4},
	{1999999, 436, 4}
};

Předem děkuji za pomoc :)

Ajtak

Edited by Ajtak
Oprava menší chybky

Sdílet tento příspěvek


Link to post
Share on other sites

10 odpovědí na tuto otázku

Recommended Posts

  • 0
On 5. 3. 2019 at 11:31, polismanovicp said:

Hodil by se spíš celý kod a každopádně poslední čárka jak u enum tak u proměné se nepíše v případě že se jedná o více "proměn".

u ''emum'' se čárka píše ale u toho autosalonu ''salonscar'' se nepíše to máš pravdu...ale vytáhl jsem jen pár řádku nechtěl jsem sem to dávat všechno kvůli spamu 😄

 

Citace

Zdravím, tohle je kód od Paradise World jestli se nemylim. Já tenhle problém vyřešil že máš ve filterscriptu složku autosalony. Tak ji smaž a znova vytvoř.

Zatím ;) 

 

Ano je to základ PW ale ve FS složku autosalonu určitě nemám a ve striptech taky nemám složku autosalony maximálně property

 

Sdílet tento příspěvek


Link to post
Share on other sites
  • 0
před 11 hodinami, Ajtak said:

u ''emum'' se čárka píše ale u toho autosalonu ''salonscar'' se nepíše to máš pravdu...ale vytáhl jsem jen pár řádku nechtěl jsem sem to dávat všechno kvůli spamu 😄

 

Ano je to základ PW ale ve FS složku autosalonu určitě nemám a ve striptech taky nemám složku autosalony maximálně property

 

Zdravím, omlouvám se já mám vlastně ukládání k těm autosalonů, spíš měl.

Sdílet tento příspěvek


Link to post
Share on other sites
  • 0

Zdravím,
Omlouvám se za pozdní vazbu ale měl jsem něco s PC, ale už je to v pohodě, tudíž zde Vám dodává ten kod :

 

new SalonCount;
new Salon[MAX_SALONS][Salon_Info];
//---
	case SHOP_ID_SALOON:
		{
			new SalonID = GetSalonSHOP(ShopID), IDsCount;
			if(SalonID != -1)
			{
			    if(strcmp(Salon[SalonID][Salo_Name], Obchod[ShopID][P_Nazev], false) == 0)
			    {
	   				for(new x; x < sizeof(SalonCars); x ++)
					{
						if(SalonID == SalonCars[x][Veh_SaloonID])
						{
		    				if(cisl == IDsCount)
						    {
						        return SalonCars[x][Veh_Cost];
							}
	  						IDsCount ++;
						}
					}
				}
			}
		}
//---
	case SHOP_ID_SALOON:
		{
		    new SalonID = GetSalonSHOP(ShopID), IDsCount;
			if(SalonID != -1)
			{
			    if(strcmp(Salon[SalonID][Salo_Name], Obchod[ShopID][P_Nazev], false) == 0)
			    {
	   				for(new x; x < sizeof(SalonCars); x ++)
					{
						if(SalonID == SalonCars[x][Veh_SaloonID])
						{
		    				if(cisl == IDsCount)
						    {
						        format(strin,sizeof(strin),"%s", VehName[ SalonCars[x][Veh_IDs] - 400 ]);
								break;
							}
	  						IDsCount ++;
						}
					}
				}
			}
		}
//---
stock CreateSalon(const S_Name[], Float:S_X, Float:S_Y, Float:S_Z, Float:V_X, Float:V_Y, Float:V_Z, Float:V_A)
{
	if(SalonCount < MAX_SALONS)
	{
	    format(Salon[SalonCount][Salo_Name], 20, "%s", S_Name);
	    
	    Salon[SalonCount][Salo_x] = S_X;
	    Salon[SalonCount][Salo_y] = S_Y;
	    Salon[SalonCount][Salo_z] = S_Z;
	    
	    Salon[SalonCount][Salo_Veh_x] = V_X;
	    Salon[SalonCount][Salo_Veh_y] = V_Y;
	    Salon[SalonCount][Salo_Veh_z] = V_Z;
	    Salon[SalonCount][Salo_Veh_a] = V_A;
	    
	    //CreatePickup(1239, 1, S_X, S_Y, S_Z);
	    CreateMapIcon(S_X, S_Y, 55);
	    CreateCp(S_X, S_Y, S_Z, 1, CP_SALOONY); // TUNING
	    SalonCount ++;
	}else print("Překročen MAX_SALONS");
	return 1;
}
//---
stock GetSalon(playerid)
{
	for(new i; i < SalonCount; i ++)
	{
	    if(IsPlayerInSphere(playerid, Salon[i][Salo_x], Salon[i][Salo_y], Salon[i][Salo_z], 3))
	    {
	        return i;
	    }
	}
	return -1;
}
//---
stock GetSalonSHOP(ShopID)
{
	for(new i; i < SalonCount; i ++)
	{
	    if(strcmp(Salon[i][Salo_Name], Obchod[ShopID][P_Nazev], false) == 0)
	    {
	        return i;
	    }
	}
	return -1;
}
//---
stock CreateSalonCar(playerid, CarID, SalonID)
{
	new Colorr = random(50);

	new ID = CreateVehicleEx(CarID, Salon[SalonID][Salo_Veh_x], Salon[SalonID][Salo_Veh_y], Salon[SalonID][Salo_Veh_z], Salon[SalonID][Salo_Veh_a], Colorr, Colorr, -1);
	
    PutPlayerInVehicleEx(playerid, ID, 0);
    
    Hrac[NPC_CP][playerid] = 3;
    VehicleCanPark[ID] = 1;
    VehicleColor[0][ID] = Colorr;
    VehicleColor[1][ID] = Colorr;
    VehiclePaint[ID] = -1;
	return 1;
}
//---
case DIALOG_2D_SALON:
		{
  			new SalonID = GetPVarInt(playerid,"Salon_ID");
	    	for(new x; x < sizeof(SalonCars); x ++)
			{
				if(SalonID == SalonCars[x][Veh_SaloonID])
				{
				    Player2dMaxSeznam[playerid] ++;
				}
			}
		}
//---
case DIALOG_2D_SALON:
				{//poiuz
				    new SalonID = GetPVarInt(playerid,"Salon_ID");
				    new Shop_ID = GetPVarInt(playerid,"ObchodShopID");
				    
				    //ObchodITEM[0][Shop_ID]
				    //new NewSalon = -1;
				    for(new x; x < sizeof(SalonCars); x ++)
					{
						if(SalonID == SalonCars[x][Veh_SaloonID])
						{
						    //if(NewSalon == -1) NewSalon = x;
						    
						    if(ID == IDsCount)
						    {
						        PlayerTextDrawSetPreviewRot(playerid, Player2DModel[IDs][playerid], -20.000000, 0.000000, 310.000000, 1.000000);
						    	PlayerTextDrawSetPreviewModel(playerid, Player2DModel[IDs][playerid], SalonCars[x + IDsCount][Veh_IDs]);

								/*new Pronn = SalonCars[x + IDsCount][Veh_Cost] / 100;
								if(HaveVIP(playerid) == 1)  format(STR, sizeof(STR), "%s~n~%s$", VehName[ SalonCars[x + IDsCount][Veh_IDs] - 400 ], Number(Pronn * 75));
								else						format(STR, sizeof(STR), "%s~n~%s$", VehName[ SalonCars[x + IDsCount][Veh_IDs] - 400 ], Number(SalonCars[x + IDsCount][Veh_Cost]));
								*/
								
								new Pronn = ObchodITEM[ IDsCount ][Shop_ID];
								format(STR, sizeof(STR), "%s~n~%s$", VehName[ SalonCars[x + IDsCount][Veh_IDs] - 400 ], Number(Pronn));
								
                                PlayerTextDrawShow(playerid, Player2DModel[IDs][playerid]);
								PlayerTextDrawSetString(playerid, Player2DName[IDs][playerid], STR);
								PlayerTextDrawShow(playerid, Player2DName[IDs][playerid]);
							}
						    IDsCount ++;
						}
					}
				}
//---
CreateSalon("Otto Cars", -1661.2600,1217.4689,7.2500, -1639.9967,1214.5382,6.7937,225.3812);
    CreateSalon("Wang Cars", -1956.7164,273.7246,41.0471, -1928.4633,270.1055,42.5710,180.7036);
//---
}else{
					    if(IsVehicleInAnyHouse(GetPlayerVehicleID(playerid)) != 0 && VehicleCanPark[GetPlayerVehicleID(playerid)] == 1)
					    {
					        for(new x; x < sizeof(SalonCars); x ++)
							{
			    				if(SalonCars[x][Veh_IDs] == GetVehicleModel(GetPlayerVehicleID(playerid)))
							    {
							        //Number(SalonCars[S_Count][Veh_Cost])
							        PlayerExported[playerid] = 0;
							        StopVehicle(GetPlayerVehicleID(playerid));
							        DisablePlayerCheckpointEx(playerid);
							        SetPVarInt(playerid, "ExportVehicle", x);
							        
							        new STR[100];
							        if(HaveVIP(playerid) == 1) 	format(STR, sizeof(STR), "Opravdu chcete prodat Vaše vozidlo za %s$ ?", Number(SalonCars[x][Veh_Cost] / 2));
							        else						format(STR, sizeof(STR), "Opravdu chcete prodat Vaše vozidlo za %s$ ?", Number(SalonCars[x][Veh_Cost] / 2));
							        ShowPlayerDialogEx(playerid, DIALOG_EXPORT_HOUSE_CAR, DIALOG_STYLE_MSGBOX, "Export vozidel", STR, "Prodat", "Zavřít");
									return 1;
								}
							}
					    }
					}
//---
case CP_SALOONY:
	    	{
	    	    if(!IsPlayerInAnyVehicle(playerid))
	    	    {
	    	        //-----------
					new SalonsID = GetSalon(playerid);
					if(SalonsID != -1)
					{
					    SetPVarInt(playerid, "Salon_ID", SalonsID);
					    for(new i; i < ObchodCount + 1; i ++)
						{
							if(ObchodITEM_ID[i] == SHOP_ID_SALOON)
				   		    {
				   		        if(IsPlayerInSphere(playerid, ObchodITEM_X[i], ObchodITEM_Y[i], ObchodITEM_Z[i], 10))
				       		    {
				             		SetPVarInt(playerid, "ObchodShopID", i);
				             		printf("ObchodShopID %d", i);
				             		break;
  					    		}
						  	}
						}
					    
					    Create2dDialog(playerid, DIALOG_2D_SALON);
                        //ShowPlayerDialogEx(playerid, DIALOG_SALOON, DIALOG_STYLE_LIST, Salon[SalonsID][Salo_Name], "Koupit vozidlo", "Vybrat", "Zavřít");
                        //Hrac[NPC_CP][playerid] = 999999;
                        DisablePlayerCheckpointEx(playerid);
                        
					}
	    	    }
	    	}
//---
    new SalonID =       GetPVarInt(playerid,"Salon_ID");
//---
case DIALOG_SALOON:
		{
		    if(response == 1)
			{
			    for(new x; x < sizeof(SalonCars); x ++)
				{
					if(SalonID == SalonCars[x][Veh_SaloonID])
					{
					    /*new Pronn = (SalonCars[x][Veh_Cost] / 100);
					    if(HaveVIP(playerid) == 1)	format(MAX_STR, sizeof(MAX_STR), "%s\n%s{84E812} (-%s$)", MAX_STR, VehName[ SalonCars[x][Veh_IDs] -400 ], Number(Pronn * 50));
					    else                        format(MAX_STR, sizeof(MAX_STR), "%s\n%s{84E812} (-%s$)", MAX_STR, VehName[ SalonCars[x][Veh_IDs] -400 ], Number(SalonCars[x][Veh_Cost]));*/
					}
				}
				ShowPlayerDialogEx(playerid, DIALOG_SALOON_SEZNAM, DIALOG_STYLE_LIST, Salon[SalonID][Salo_Name], MAX_STR, "Vybrat", "Zavřít");
			}else Hrac[NPC_CP][playerid] = 3;
		}
//case DIALOG_SALOON_SEZNAM:
		{
		    if(response == 1)
			{
			    new ID, STR[100];
			    
			    for(new x; x < sizeof(SalonCars); x ++)
				{
					if(SalonID == SalonCars[x][Veh_SaloonID])
					{
					    if(ID == listitem)
					    {
							SetPVarInt(playerid, "SalonVyberCar", x);
						}
						ID ++;
					}
				}
			    new IDs = GetPVarInt(playerid,"SalonVyberCar"), Pronn = (SalonCars[IDs][Veh_Cost] / 100);
			    
			    if(HaveVIP(playerid) == 1)	format(STR, sizeof(STR), "Chcete koupit %s za {84E812}%s${A9C4E4} ?", VehName[ SalonCars[IDs][Veh_IDs] -400 ], Number(Pronn * 50));
			    else                        format(STR, sizeof(STR), "Chcete koupit %s za {84E812}%s${A9C4E4} ?", VehName[ SalonCars[IDs][Veh_IDs] -400 ], Number(SalonCars[IDs][Veh_Cost]));
			    ShowPlayerDialogEx(playerid, DIALOG_SALOON_POTVRD, DIALOG_STYLE_MSGBOX, Salon[SalonID][Salo_Name], STR, "Ano", "Ne");
			}else Hrac[NPC_CP][playerid] = 3;
		}
		case DIALOG_SALOON_POTVRD:
		{
		    if(response == 1)
			{
			    new IDs = GetPVarInt(playerid,"SalonVyberCar"), Shop_ID = GetPVarInt(playerid,"ObchodShopID"), IDsCount = GetPVarInt(playerid,"SalonVyberCarCena");
			    
			    new Pronn = ObchodITEM[ IDsCount ][Shop_ID];
			    
			    if(ZjistitHraciPenizeEx(playerid) < Pronn )       return SCM(playerid,0xFF0000AA,"Nemáte dostatek peněz!", 1);
		    	DatHraciPenizeEx(playerid, -(Pronn));
                ShopGiveZisk(Shop_ID, ObchodITEM[IDsCount][Shop_ID]);
                
				Log_Write(100,playerid,"(VEHICLE) Hráč %s si koupil %s(%d) za %s$", PlayerName(playerid), VehName[ SalonCars[IDs][Veh_IDs] -400 ], IDs, Number(Pronn));


			    CreateSalonCar(playerid, SalonCars[IDs][Veh_IDs], SalonID);
			    Hrac[NPC_CP][playerid] = 3;
			}else Create2dDialog(playerid, DIALOG_2D_SALON);
		}
//---
for(new i; i < SalonCount; i ++)
						{
							format(MAX_STR,sizeof(MAX_STR),"%s\n%s",MAX_STR, Salon[i][Salo_Name]);
						}
                        ShowPlayerDialogEx(playerid, DIALOG_NAVIGACE_SALOM, DIALOG_STYLE_LIST, "Autosalóny", MAX_STR, "Vybrat", "Zavřít");
--


Opravdu nevím co stím je... 

Sdílet tento příspěvek


Link to post
Share on other sites
  • 0

A vrací ti to u všech ostatních aut správnou cenu? 😮 Je divné, že by to u všech bylo naprosto v pořádku a jen tohle by dělalo problém, vše procházíš skrze enumy (bez nějaké výjimky), takže by ti to teoreticky mělo ukazovat špatnou hodnotu u více aut, ale ty sis nejspíš všiml jen 0... A v čem přesně ti to ukazuje špatnou hodnotu? V dialogu? V textdrawu? 

Co jsem to tak na rychlo prošel, tak mi nesedí toto (case DIALOG_2D_SALON:) - to by se tedy týkalo špatných hodnot v textdrawu:

new Pronn = ObchodITEM[ IDsCount ][Shop_ID]; //tato proměnná
format(STR, sizeof(STR), "%s~n~%s$", VehName[ SalonCars[x + IDsCount][Veh_IDs] - 400 ], Number(Pronn));
								

Nemělo by v té proměnné spíš být něco takového?

new Pronn = SalonCars[x + IDsCount][Veh_Cost]

btw. proč máš dva case se stejným dialog id (tj. DIALOG_2D_SALON) ?

Edited by The Hidden Face

Sdílet tento příspěvek


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×