Beitrag von Kriegerbeere ()
Dieser Beitrag wurde vom Autor gelöscht ().
Kannst du vielleicht noch vor den Zeilen die Zeilen aus dem Script schreiben
Bitte die GENAUE Fehlerzeile posten.
new engine,lights,alarm,doors,bonnet,boot,objective;//Global
COMMAND:lock(playerid,params[])
{
if(!IsPlayerInAnVehicle(playerid) || GetPlayerVehicleSeat(playerid))return SendClientMessage(playerid,COLOR_RED,"Du bist nicht der Fahrer eines Fahrzeuges!");
new vid = GetPlayerVehicleID(playerid);
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
if(doors == false)
{
SetVehicleParamsEx(vid,engine,lights,alarm,true,bonnet,boot,objective);
SendClientMessage(playerid,COLOR_RED,"Du hast dein Fahrzeug abgeschlossen!");
return 1;
}
SetVehicleParamsEx(vid,engine,lights,alarm,false,bonnet,boot,objective);
SendClientMessage(playerid,COLOR_GREEN,"Du hast dein Fahrzeug aufgeschlossen!");
return 1;
}
Ich denke mal, mit dem Code sollten die Fehler behoben sein.• Die Deklarationen (engine,lights,...) müssen Global ins Script.- Quatsch..
• 2 if-Abfragen waren falsch aufgebaut.
Kannst du vielleicht noch vor den Zeilen die Zeilen aus dem Script schreiben
Ist nicht nötig, da der Fehler ja in den Zeilen vorhanden ist
Schreib das mal alles so:
COMMAND:lock(playerid,params[])
{
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid,COLOR_RED,"Du bist nicht der Fahrer eines Fahrzeugs!");
new engine,lights,alarm,doors,bonnet,boot,objective,vid = GetPlayerVehicleID(playerid);
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
if(doors == false)
{
SetVehicleParamsEx(vid,engine,lights,alarm,true,bonnet,boot,objective);
SendClientMessage(playerid,COLOR_RED,"Du hast dein Fahrzeug abgeschlossen!");
return 1;
}
SetVehicleParamsEx(vid,engine,lights,alarm,false,bonnet,boot,objective);
return SendClientMessage(playerid,COLOR_GREEN,"Du hast dein Fahrzeug aufgeschlossen!");
}
mfg.
nimm einfach den befehl
ocmd:lock(playerid,params[])
{
if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return SendClientMessage(playerid,COLOR_RED,"Du musst der Fahrer eines Fahrzeugs sein um dein Auto auf/abzuschliessen");
new vID=GetPlayerVehicleID(playerid),
tmp_engine,
tmp_lights,
tmp_alarm,
tmp_doors,
tmp_bonnet,
tmp_boot,
tmp_objective;
//an/aufschliessen
GetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
if(tmp_doors==1){
tmp_doors =0;
SendClientMessage(playerid, 0xF3CA00FF, "*Du hast dasFahrzeug abgeschlossen*");
}else{
tmp_doors = 1;
SendClientMessage(playerid, 0xF3CA00FF, "*Du hast das Fahrzeug aufgeschlossen*");
}
SetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
return 1;
}
ocmd:lock(playerid,params[])
{
if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return SendClientMessage(playerid,COLOR_RED,"Du musst der Fahrer eines Fahrzeugs sein um dein Auto auf/abzuschliessen");
new vID=GetPlayerVehicleID(playerid),
tmp_engine,
tmp_lights,
tmp_alarm,
tmp_doors,
tmp_bonnet,
tmp_boot,
tmp_objective;
//an/aufschliessen
GetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
if(tmp_doors==0){
tmp_doors =1;
SendClientMessage(playerid, 0xF3CA00FF, "*Du hast das Fahrzeug abgeschlossen*");
}else{
tmp_doors = 0;
SendClientMessage(playerid, 0xF3CA00FF, "*Du hast das Fahrzeug aufgeschlossen*");
}
SetVehicleParamsEx(vID, tmp_engine, tmp_lights, tmp_alarm, tmp_doors, tmp_bonnet, tmp_boot, tmp_objective);
return 1;
}
1 = zu
0 = offen
EDIT:
Welchen Befehl verwendest du eigentlich? Den von Silvio.Castro oder den von Kaliber?
Das Fahrzeug ist standardmäßig offen, die Funktion sollte das auch so ausgeben.
Welchen Befehl verwendest du denn?
Tatsächlich, habe es grade getestet, ist bei mir auch so.
Füge das hier unter die Includes ein:
stock ex_CreateVehicle(modelid, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
new vID = CreateVehicle(modelid, x, y, z, angle, color1, color2, respawn_delay);
GetVehicleParamsEx(vID,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vID,engine,lights,alarm,0,bonnet,boot,objective);
return vID;
}
#if defined _HOOK_CreateVehicle
#undef CreateVehicle
#else
#define _HOOK_CreateVehicle
#endif
#define CreateVehicle ex_CreateVehicle
Ich nehme mal an, du erstellst die Fahrzeuge mit CreateVehicle.
Dann geht es.
Hast du davon einen native, oder einen stock, oder kannst du die Punkte mal mit den Daten ersetzen?
Dann ändere ich dir den Hook.
stock ex_Vehicle_AddStatic(modelid, Float:x, Float:y, Float:z, Float:angle, color1, color2, respawn_delay)
{
new engine,lights,alarm,doors,bonnet,boot,objective;
new vID = Vehicle_AddStatic(modelid, x, y, z, angle, color1, color2, respawn_delay);
GetVehicleParamsEx(vID,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vID,engine,lights,alarm,0,bonnet,boot,objective);
return vID;
}
#if defined _HOOK_Vehicle_AddStatic
#undef Vehicle_AddStatic
#else
#define _HOOK_Vehicle_AddStatic
#endif
#define Vehicle_AddStatic ex_Vehicle_AddStatic