Hallo liebe Brotfische,
ich habe ein Problem. Ich arbeite derzeit an einen Dynamischen Tankstellensystem und dazu gehört auch das jeder Administrator die Tankstellen bearbeiten kann.
Das ist der aktuelle PAWN-Source Code was ich geschrieben habe:
[pwn=38500]
if(strcmp(cmdtext, "/configtanke", true) == 0)
{
if(SpielerInfo[playerid][pAdmin] >= 4)
{
new exist = 0;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Verwende: {0041FF}/configtanke [TankstellenID] [Syntax] [Wert]");
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Syntax: {0041FF}owner beschreibung price level exp kasse products maxproducts benzinpreis");
return 1;
}
new tankid = tmp;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Verwende: {0041FF}/configtanke [TankstellenID] [Syntax] [Wert]");
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Syntax: {0041FF}owner beschreibung price level exp kasse products maxproducts benzinpreis");
return 1;
}
new syntax = tmp;
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Verwende: {0041FF}/configtanke [TankstellenID] [Syntax] [Wert]");
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Syntax: {0041FF}owner beschreibung price level exp kasse products maxproducts benzinpreis");
return 1;
}
new wert = tmp;
for(new idx = 0; idx<sizeof(TankInfo); idx++)
{
if(TankInfo[idx][tid] == tankid)
{
if(strcmp(syntax,"owner",true) == 0)
{
new besitzer = ReturnUser(TankInfo[idx][towner]);
if(strcmp(wert,"0",true) == 0 strcmp(wert,"Niemand",true) == 0)
{
if(IsPlayerConnected(besitzer)
{
SpielerInfo[besitzer][pTankkey] = 999;
}
TankInfo[idx][towner] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"beschreibung",true) == 0)
{
TankInfo[idx][tbeschreibung] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"price",true) == 0)
{
TankInfo[idx][tbuyprice] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"level",true) == 0)
{
TankInfo[idx][tlevel] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"exp",true) == 0)
{
TankInfo[idx][texp] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"kasse",true) == 0)
{
TankInfo[idx][tkasse] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"products",true) == 0)
{
TankInfo[idx][tproducts] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"maxproducts",true) == 0)
{
TankInfo[idx][tmaxproducts] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else if(strcmp(syntax,"benzinpreis",true) == 0)
{
TankInfo[idx][tfillprice] = wert;
SaveTanken();
for(new idx2 = 0; idx2<sizeof(TankInfo); idx2++)
{
DestroyPickup(TankInfo[idx][tpickup]);
Delete3DTextLabel(TankInfo[idx][tlabel]);
}
SetTimer("LoadTanken", 500, 0);
}
else
{
SendClientMessage(playerid, COLOR_RED, "Syntaxt ungültig");
SendClientMessage(playerid, COLOR_WHITE, "{19FF00}Syntax: {0041FF}owner beschreibung price level exp kasse products maxproducts benzinpreis");
}
exist++;
}
}
/*if(exist==0)
{
SendClientMessage(playerid, COLOR_RED, "Die Tankstelle existiert nicht");
}*/
}
else
{
SendClientMessage(playerid, COLOR_RED, "Du hast nicht die nötigen Rechte!");
}
return 1;
}
[/pwn]
Und plötzlich erkennt PAWN komischerweise bestehende functions nicht mehr.
Fehler:
C:\Users\MD\Desktop\sv\pawno\include\M-Zones.inc(113) : error 004: function "M_OnPlayerEnterZone" is not implemented
C:\Users\MD\Desktop\sv\pawno\include\M-Zones.inc(122) : error 004: function "M_OnPlayerLeaveZone" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(4795) : error 004: function "FractionLockDoors" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(4796) : error 004: function "UpdateZones" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(5105) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(5229) : error 017: undefined symbol "GetPlayerGun"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(6567) : error 017: undefined symbol "CreatePlayerTextDraws"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(7527) : error 004: function "OnPlayerCarLogin" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(7573) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(7585) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(7966) : error 017: undefined symbol "GetPlayerWeapons"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(8153) : error 004: function "RemoveRoadblock" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(8157) : error 017: undefined symbol "SaveMysqlPlayer"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(8158) : error 004: function "OnPlayerCarUpdate_SQL" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(8168) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(8542) : error 004: function "Waff_Reset" is not implemented
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(8576) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(9990) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10004) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10021) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10030) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10039) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10048) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10057) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10066) : error 017: undefined symbol "ShowUserDialog"
C:\Users\MD\Desktop\NGL Projekt\SV 0.3z\gamemodes\nglrole.pwn(10076) : error 017: undefined symbol "ShowUserDialog"
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
26 Errors.
Wenn /configtanke Script weg ist, geht alles. Ich persöhnlich versteh es nicht und finde keinen Ansatz diesen Fehler erfolgreich zu beheben.
Könntet ihr mir helfen?
Liebe Grüße
palwal