Guten Morgen.
Habe ein Script auf meiner Festplatte gefunden da ist ein Fehler drin und ich weiß nicht wie ich den ausgebügelt bekommen soll.
Folgende Script Codes sollten eigentlich funktionieren aber macht es es nicht.
Die Zwei Codes die ich Poste sind die Funktionen die eigentlich funktionieren sollten.
Code
public OnPlayerEditAttachedObject( playerid, response, index, modelid2, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ )
{
if(response)
{
if(MoveHut[playerid] == 1)
{
new mysqlstring[175];
HutPos[playerid][index][hX] = fOffsetX;
HutPos[playerid][index][hY] = fOffsetY;
HutPos[playerid][index][hZ] = fOffsetZ;
HutPos[playerid][index][hRotX] = fRotX;
HutPos[playerid][index][hRotY] = fRotY;
HutPos[playerid][index][hRotZ] = fRotZ;
HutPos[playerid][index][hut] = HutPos[playerid][index][hut];
SetPlayerVirtualWorld(playerid,0);
SetPlayerPosEx(playerid,301.6733,709.9156,2003.5673);
SetCameraBehindPlayer(playerid);
SendClientMessage(playerid,WEISS,"Kopfbedeckung erfolgreich geändert!");
TogglePlayerControllable(playerid,true);
format(mysqlstring,sizeof(mysqlstring),"UPDATE "#DATENBANK"_hutSystem SET `posx`='%f',`posy`='%f',`posz`='%f',`rotx`='%f',`roty`='%f',`rotz`='%f'",HutPos[playerid][index][hX],HutPos[playerid][index][hY],HutPos[playerid][index][hZ],HutPos[playerid][index][hRotX],HutPos[playerid][index][hRotY],HutPos[playerid][index][hRotZ]);
mysql_function_query(MYSQLVerbindung,mysqlstring,false,"","");
if(HutPos[playerid][index][hX] >= 0.269998)
{
HutPos[playerid][index][hX] = 0.152999;
SetPlayerAttachedObject(playerid,8,HutPos[playerid][3][hut],2,HutPos[playerid][3][hX],HutPos[playerid][3][hY],HutPos[playerid][3][hZ],HutPos[playerid][3][hRotX],HutPos[playerid][3][hRotY],HutPos[playerid][3][hRotZ], 1.000000,1.000000,1.000000);
}
if(HutPos[playerid][index][hX] <= 0.076998)
{
HutPos[playerid][index][hX] = 0.152999;
SetPlayerAttachedObject(playerid,8,HutPos[playerid][3][hut],2,HutPos[playerid][3][hX],HutPos[playerid][3][hY],HutPos[playerid][3][hZ],HutPos[playerid][3][hRotX],HutPos[playerid][3][hRotY],HutPos[playerid][3][hRotZ], 1.000000,1.000000,1.000000);
}
if(HutPos[playerid][index][hY] >=0.147000)
{
HutPos[playerid][3][hY] = -0.006000;
SetPlayerAttachedObject(playerid,8,HutPos[playerid][3][hut],2,HutPos[playerid][3][hX],HutPos[playerid][3][hY],HutPos[playerid][3][hZ],HutPos[playerid][3][hRotX],HutPos[playerid][3][hRotY],HutPos[playerid][3][hRotZ], 1.000000,1.000000,1.000000);
}
if(HutPos[playerid][index][hY] <=-0.084999)
{
HutPos[playerid][3][hY] = -0.006000;
SetPlayerAttachedObject(playerid,8,HutPos[playerid][3][hut],2,HutPos[playerid][3][hX],HutPos[playerid][3][hY],HutPos[playerid][3][hZ],HutPos[playerid][3][hRotX],HutPos[playerid][3][hRotY],HutPos[playerid][3][hRotZ], 1.000000,1.000000,1.000000);
}
}
}
return true;
}
Alles anzeigen
Code
public OnPlayerModelSelection(playerid, response, listid, modelid)
{
new Float:Pos[3], query[400];
GetPlayerPos(playerid,Pos[0],Pos[1],Pos[2]);
if(listid == wandobj)
{
if(response)
{
if((GetACMoney(playerid) - 500) < 0)
{
SendClientMessage(playerid,GRAU,"Du hast leider nicht genug Geld auf der Hand!");
UnFreeze(playerid);
return true;
}
UnFreeze(playerid);
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Objekt ausgewählt. Kosten: 500$");
SendClientMessage(playerid,GRAU,""#HTML_RED"Erklärung:");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Du steuerst das Objekt durch deine PC Maus.");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch die Richtungpfeile wechselst du die Rotationen des Objektes.");
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Du kannst den Bearbeitungs Modus durch drücken der 'ESC' Taste beenden!");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch das 'Save Icon' speicherst du die Koordinaten des Objektes und beendest die Bearbeitung.");
ACMoney(playerid,-500);
for(new obj;obj<MAX_OBJEKTE; obj++)
{
if(ObjektLoad[obj][ObjektID] == -1)
{
new Float:isNull = 0.0, mygrid = getMyGRID(playerid);
bauObjekt[playerid][1] = obj;
bauObjekt[playerid][0] = CreateDynamicObject(modelid,Pos[0]+3,Pos[1]+2,Pos[2],0.0,0.0,0.0,-1,-1,-1, 350.0);
ObjektLoad[obj][ObjektID] = bauObjekt[playerid][0];
EditDynamicObject(playerid, ObjektLoad[obj][ObjektID]);
HausBau[mygrid][HBMinObj] = HausBau[mygrid][HBMinObj]+1;
format(query,sizeof(query),"INSERT INTO "#DATENBANK"_hausbauobj (`GRDID`,`ObjID`,`posX`,`posY`,`posZ`,`RX`,`RY`,`RZ`) VALUES ('%d','%d','%f','%f','%f','%f','%f','%f')",
Spieler[playerid][myGRID],modelid,Pos[0]+3,Pos[1]+2,Pos[2],isNull,isNull,isNull);
mysql_function_query(MYSQLVerbindung,query,false,"","");
return true;
}
}
return true;
}
else return true;
}
if(listid == tuerobj)
{
if(response)
{
if((GetACMoney(playerid) - 350) < 0)
{
SendClientMessage(playerid,GRAU,"Du hast leider nicht genug Geld auf der Hand!");
UnFreeze(playerid);
return true;
}
UnFreeze(playerid);
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Objekt ausgewählt. Kosten: 350$");
SendClientMessage(playerid,GRAU,""#HTML_RED"Erklärung:");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Du steuerst das Objekt durch deine PC Maus.");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch die Richtungpfeile wechselst du die Rotationen des Objektes.");
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Du kannst den Bearbeitungs Modus durch drücken der 'ESC' Taste beenden!");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch das 'Save Icon' speicherst du die Koordinaten des Objektes und beendest die Bearbeitung.");
ACMoney(playerid,-350);
for(new obj;obj<MAX_OBJEKTE; obj++)
{
if(ObjektLoad[obj][ObjektID] == -1)
{
new Float:isNull = 0.0, mygrid = getMyGRID(playerid);
bauObjekt[playerid][1] = obj;
bauObjekt[playerid][0] = CreateDynamicObject(modelid,Pos[0]+3,Pos[1]+2,Pos[2],0.0,0.0,0.0,-1,-1,-1, 350.0);
ObjektLoad[obj][ObjektID] = bauObjekt[playerid][0];
EditDynamicObject(playerid, ObjektLoad[obj][ObjektID]);
HausBau[mygrid][HBMinObj] = HausBau[mygrid][HBMinObj]+1;
format(query,sizeof(query),"INSERT INTO "#DATENBANK"_hausbauobj (`GRDID`,`ObjID`,`posX`,`posY`,`posZ`,`RX`,`RY`,`RZ`) VALUES ('%d','%d','%f','%f','%f','%f','%f','%f')",
Spieler[playerid][myGRID],modelid,Pos[0]+3,Pos[1]+2,Pos[2],isNull,isNull,isNull);
mysql_function_query(MYSQLVerbindung,query,false,"","");
return true;
}
}
return true;
}
else return true;
}
if(listid == naturobj)
{
if(response)
{
if((GetACMoney(playerid) - 150) < 0)
{
SendClientMessage(playerid,GRAU,"Du hast leider nicht genug Geld auf der Hand!");
UnFreeze(playerid);
return true;
}
UnFreeze(playerid);
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Objekt ausgewählt. Kosten: 150$");
SendClientMessage(playerid,GRAU,""#HTML_RED"Erklärung:");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Du steuerst das Objekt durch deine PC Maus.");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch die Richtungpfeile wechselst du die Rotationen des Objektes.");
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Du kannst den Bearbeitungs Modus durch drücken der 'ESC' Taste beenden!");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch das 'Save Icon' speicherst du die Koordinaten des Objektes und beendest die Bearbeitung.");
ACMoney(playerid,-150);
for(new obj;obj<MAX_OBJEKTE; obj++)
{
if(ObjektLoad[obj][ObjektID] == -1)
{
new Float:isNull = 0.0, mygrid = getMyGRID(playerid);
bauObjekt[playerid][1] = obj;
bauObjekt[playerid][0] = CreateDynamicObject(modelid,Pos[0]+3,Pos[1]+2,Pos[2],0.0,0.0,0.0,-1,-1,-1, 350.0);
ObjektLoad[obj][ObjektID] = bauObjekt[playerid][0];
EditDynamicObject(playerid, ObjektLoad[obj][ObjektID]);
HausBau[mygrid][HBMinObj] = HausBau[mygrid][HBMinObj]+1;
format(query,sizeof(query),"INSERT INTO "#DATENBANK"_hausbauobj (`GRDID`,`ObjID`,`posX`,`posY`,`posZ`,`RX`,`RY`,`RZ`) VALUES ('%d','%d','%f','%f','%f','%f','%f','%f')",
Spieler[playerid][myGRID],modelid,Pos[0]+3,Pos[1]+2,Pos[2],isNull,isNull,isNull);
mysql_function_query(MYSQLVerbindung,query,false,"","");
return true;
}
}
return true;
}
else return true;
}
if(listid == mobelobj)
{
if(response)
{
if((GetACMoney(playerid) - 1000) < 0)
{
SendClientMessage(playerid,GRAU,"Du hast leider nicht genug Geld auf der Hand!");
UnFreeze(playerid);
return true;
}
UnFreeze(playerid);
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Objekt ausgewählt. Kosten: 1.000$");
SendClientMessage(playerid,GRAU,""#HTML_RED"Erklärung:");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Du steuerst das Objekt durch deine PC Maus.");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch die Richtungpfeile wechselst du die Rotationen des Objektes.");
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Du kannst den Bearbeitungs Modus durch drücken der 'ESC' Taste beenden!");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch das 'Save Icon' speicherst du die Koordinaten des Objektes und beendest die Bearbeitung.");
ACMoney(playerid,-1000);
for(new obj;obj<MAX_OBJEKTE; obj++)
{
if(ObjektLoad[obj][ObjektID] == -1)
{
new Float:isNull = 0.0, mygrid = getMyGRID(playerid);
bauObjekt[playerid][1] = obj;
bauObjekt[playerid][0] = CreateDynamicObject(modelid,Pos[0]+3,Pos[1]+2,Pos[2],0.0,0.0,0.0,-1,-1,-1, 350.0);
ObjektLoad[obj][ObjektID] = bauObjekt[playerid][0];
EditDynamicObject(playerid, ObjektLoad[obj][ObjektID]);
HausBau[mygrid][HBMinObj] = HausBau[mygrid][HBMinObj]+1;
format(query,sizeof(query),"INSERT INTO "#DATENBANK"_hausbauobj (`GRDID`,`ObjID`,`posX`,`posY`,`posZ`,`RX`,`RY`,`RZ`) VALUES ('%d','%d','%f','%f','%f','%f','%f','%f')",
Spieler[playerid][myGRID],modelid,Pos[0]+3,Pos[1]+2,Pos[2],isNull,isNull,isNull);
mysql_function_query(MYSQLVerbindung,query,false,"","");
return true;
}
}
return true;
}
else return true;
}
if(listid == hauptturobj)
{
if(response)
{
if((GetACMoney(playerid) - 350) < 0)
{
SendClientMessage(playerid,GRAU,"Du hast leider nicht genug Geld auf der Hand!");
UnFreeze(playerid);
return true;
}
UnFreeze(playerid);
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Objekt ausgewählt. Kosten: 350$");
SendClientMessage(playerid,GRAU,""#HTML_RED"Erklärung:");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Du steuerst das Objekt durch deine PC Maus.");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch die Richtungpfeile wechselst du die Rotationen des Objektes.");
SendClientMessage(playerid,GRAU,""#HTML_RED"Info: "#HTML_WHITE"Du kannst den Bearbeitungs Modus durch drücken der 'ESC' Taste beenden!");
SendClientMessage(playerid,GRAU,""#HTML_WHITE"Durch das 'Save Icon' speicherst du die Koordinaten des Objektes und beendest die Bearbeitung.");
ACMoney(playerid,-350);
for(new obj;obj<MAX_OBJEKTE; obj++)
{
if(ObjektLoad[obj][ObjektID] == -1)
{
new Float:isNull = 0.0, mygrid = getMyGRID(playerid);
bauObjekt[playerid][1] = obj;
bauObjekt[playerid][0] = CreateDynamicObject(modelid,Pos[0]+3,Pos[1]+2,Pos[2],0.0,0.0,0.0,-1,-1,-1, 350.0);
ObjektLoad[obj][ObjektID] = bauObjekt[playerid][0];
EditDynamicObject(playerid, ObjektLoad[obj][ObjektID]);
HausBau[mygrid][HBMinObj] = HausBau[mygrid][HBMinObj]+1;
format(query,sizeof(query),"INSERT INTO "#DATENBANK"_hausbauobj (`GRDID`,`ObjID`,`posX`,`posY`,`posZ`,`RX`,`RY`,`RZ`) VALUES ('%d','%d','%f','%f','%f','%f','%f','%f')",
Spieler[playerid][myGRID],modelid,Pos[0]+3,Pos[1]+2,Pos[2],isNull,isNull,isNull);
mysql_function_query(MYSQLVerbindung,query,false,"","");
return true;
}
}
return true;
}
else return true;
}
return true;
}
Alles anzeigen
Folgende Fehler Tauchen auf:
Haupt-Script.p(4578) : error 025: function heading differs from prototype
Haupt-Script.p(30790) : error 025: function heading differs from prototype
Zeile 4578:
Code
public OnPlayerEditAttachedObject( playerid, response, index, modelid2, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ )
Zeile 30790:
Mein Latein dafür ist grade am ende. Habe schon versucht als forward zu machen ging auch nicht. Ich glaube ich habe etwas über sehen oder so.