stock CreateFirma(Float:x, Float:y, Float:z, preis, besitzer[32])
{
new pfad[50];
for(new i = 1; i < MAX_FIRMA; i++)
{
format(pfad,sizeof(pfad),"/Firmen/Firma%d.txt",i);.
if(!dini_Exists(pfad))
{
dini_Create(pfad);
dini_FloatSet(pfad, "x", x);
dini_FloatSet(pfad, "y", y);
dini_FloatSet(pfad, "z", z);
dini_IntSet(pfad, "preis", preis);
dini_Set(pfad, "besitzer", besitzer);
dini_IntSet(pfad, "bought", 0);
dini_Set(pfad,"status", 0);
return LoadFirma(i);
}
}
return 0;
}
stock LoadFirma(Firma)
{
new pfad[50]; format(pfad, 50, "/Firmen/Firma%d.txt", Firma); if (!fexist(pfad)) return 0;
FirmInfo[Firma][fX] = dini_Float(pfad, "x");
FirmInfo[Firma][fY] = dini_Float(pfad, "y");
FirmInfo[Firma][fZ] = dini_Float(pfad, "z");
FirmInfo[Firma][fPrice] = dini_Int(pfad, "preis");
format(FirmInfo[Firma][fBesitzer], 32, "%s", dini_Get(pfad, "besitzer"));
FirmInfo[Firma][fPickup] = CreatePickup(1273, 0, FirmInfo[Firma][fX], FirmInfo[Firma][fY], FirmInfo[Firma][fZ], 0);
return firma;
}
Alles anzeigen
Nice, das hier noch:
C:\Users\Zinne\Desktop\samp03e_svr_R2_win32\gamemodes\TruckingS.pwn(1938) : error 035: argument type mismatch (argument 3)
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Error.
stock CreateFirma(Float:x, Float:y, Float:z, preis, besitzer[32])
{
new pfad[50];
for(new i = 1; i < MAX_FIRMA; i++)
{
format(pfad,sizeof(pfad),"/Firmen/Firma%d.txt",i);
if(!dini_Exists(pfad))
{
dini_Create(pfad);
dini_FloatSet(pfad, "x", x);
dini_FloatSet(pfad, "y", y);
dini_FloatSet(pfad, "z", z);
dini_IntSet(pfad, "preis", preis);
dini_Set(pfad, "besitzer", besitzer);
dini_IntSet(pfad, "bought", 0);
dini_Set(pfad,"status", 0);//1938
return LoadFirma(i);
}
}
return 0;
}
hm
/e hm²
/e2 Gefixxt, Zeile musste 1938 dini_IntSet sein
/e3 Jetz geht mit dem Gamemode garnichts mehr!
Hier nocheinmal alles, was zum Firmensystem gehört:
#define MAX_FIRMA 5
enum FirmDaten
{
Float:fX,
Float:fY,
Float:fZ,
fBesitzer[32],
fStatus,
fBought,
fPrice,
fPickup,
fLabel[64],
fName[64]
}
new FirmInfo[MAX_FIRMA][FirmDaten];
public OnGameModeInit()
{
Connect_To_Database();
SetGameModeText("Trucking v0.1");
DisableInteriorEnterExits();
//ManualVehicleEngineAndLights();
ShowPlayerMarkers(2);
EnableStuntBonusForAll(0);
for(new i=1;i<MAX_FIRMA;i++)
{
LoadFirma(i);
if(FirmInfo[i][fBought] != 0)
{
new text[100];
format(text,sizeof(text),"** %s **\nBesitzer: %s\nStatus: %d/10",FirmInfo[i][fName],FirmInfo[i][fBesitzer],FirmInfo[i][fStatus]);
Create3DTextLabel(text,COLOR_LIGHTBLUE,FirmInfo[i][fY],FirmInfo[i][fX],FirmInfo[i][fZ],10,0);
return 1;
}
else
{
new text[100];
format(text,sizeof(text),"Diese Firma ist zu verkaufen!\nPreis: %d$\nStatus: %d/10\nKaufen: /buycomp",FirmInfo[i][fPrice],FirmInfo[i][fStatus]);
Create3DTextLabel(text,COLOR_LIGHTBLUE,FirmInfo[i][fY],FirmInfo[i][fX],FirmInfo[i][fZ],10,0);
return 1;
}
}
return 1;
}
public OnGameModeExit()
{
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
SavePlayer(i);
}
}
for(new i=1;i<MAX_FIRMA;i++)
{
KillFirma(i);
}
return 1;
}
ocmd:createcomp(playerid,params[])
{
if(isPlayerAnAdmin(playerid,5))
{
new price;
if(sscanf(params,"i",price))return SCM(playerid,COLOR_GREY,"Benutze: /createcomp [Preis]");
{
new Float:x,Float:y,Float:z;
GetPlayerPos(playerid,x,y,z);
CreateFirma(x,y,z,price,"Niemand");
return 1;
}
}
return 1;
}
ocmd:buycomp(playerid,params[])
{
for(new i=1;i<MAX_FIRMA;i++)
{
if(IsPlayerInRangeOfPoint(playerid,5,FirmInfo[i][fX],FirmInfo[i][fY],FirmInfo[i][fZ]))
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof name);
if(strcmp(FirmInfo[i][fBesitzer],name,false) == 0)return SendClientMessage(playerid,0x00FF00,"Diese Firma gehört dir bereits!");
if(strcmp(FirmInfo[i][fBesitzer],"Keiner",false))return SendClientMessage(playerid,0x00FF00,"Diese Firma steht nicht zum Verkauf!");
if(GetPlayerMoney(playerid) < FirmInfo[i][fPrice]) return SendClientMessage(playerid,0x00FF00,"Du hast nicht genug Geld!");
GivePlayerMoney(playerid,-FirmInfo[i][fPrice]);
new pfad[50];
format(pfad,sizeof(pfad),"/Firmen/Firma%d.txt",i);
dini_Set(pfad,"besitzer",name);
KillFirma(i);
LoadFirma(i);
}
}
return 1;
}
stock CreateFirma(Float:x, Float:y, Float:z, preis, besitzer[32])
{
new pfad[50];
for(new i = 1; i < MAX_FIRMA; i++)
{
format(pfad,sizeof(pfad),"/Firmen/Firma%d.txt",i);
if(!dini_Exists(pfad))
{
dini_Create(pfad);
dini_FloatSet(pfad, "x", x);
dini_FloatSet(pfad, "y", y);
dini_FloatSet(pfad, "z", z);
dini_IntSet(pfad, "preis", preis);
dini_Set(pfad, "besitzer", besitzer);
dini_IntSet(pfad, "bought", 0);
dini_IntSet(pfad,"status", 0);
return LoadFirma(i);
}
}
return 0;
}
stock LoadFirma(Firma)
{
new pfad[50];
format(pfad,sizeof(pfad),"/Firmen/Firma%d.txt",Firma);
if(!dini_Exists(pfad))return 0;
FirmInfo[Firma][fX] = dini_Float(pfad,"X");
FirmInfo[Firma][fY] = dini_Float(pfad,"Y");
FirmInfo[Firma][fZ] = dini_Float(pfad,"Z");
FirmInfo[Firma][fPrice] = dini_Int(pfad,"preis");
format(FirmInfo[Firma][fBesitzer],32,"%s",dini_Get(pfad,"Besitzer"));
FirmInfo[Firma][fPickup] = CreatePickup(1273,0,FirmInfo[Firma][fX],FirmInfo[Firma][fY],FirmInfo[Firma][fZ],0);
return 1;
}
stock KillFirma(Firma)
{
return DestroyPickup(FirmInfo[Firma][fPickup]);
}
Maan ich will noch pennen gehn