probir:
if(!IsPlayerInVehicle(i, v)) // <--- Abfrage 2, die nur für ID 0 funktioniert
{
NoFuel[i] = 1;
GameTextForPlayer(i,"~w~~n~~n~~n~~n~~n~~n~~n~~n~Tank leer",1500,3);
}
Beiträge von eli
-
-
probi es so:
public CheckGas(playerid)
{
new string[256];
for(new i=0;i<MAX_PLAYERS;i++)
{
if(IsPlayerConnected(i))
{
if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
{
new vehicle = GetPlayerVehicleID(i);
new Model = GetVehicleModel(GetPlayerVehicleID(i));
if(Gas[vehicle] >= 1)
{
if(Gas[vehicle] <= 10) { PlayerPlaySound(i, 1085, 0.0, 0.0, 0.0); }
if(gGas[i] == 1) {
format(string, sizeof(string), "~r~~n~~n~~n~~n~~n~~n~~n~~n~~n~Benzin:~w~ %d%",Gas[vehicle]);
GameTextForPlayer(i,string,15500,3); }
if(IsAPlane(vehicle) || IsABoat(vehicle) || Model == 462 || Model == 481) { Gas[vehicle]++; }
Gas[vehicle]--;
}
else
{
new vID = GetPlayerVehicleID(playerid);
NoFuel[vID] = 1;
new vid = GetPlayerVehicleID(playerid);
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
motor[vid] = false;
GameTextForPlayer(i,"~w~~n~~n~~n~~n~~n~~n~~n~~n~Kein Benzin mehr~n~Dein motor geht aus",3000,3);
}
if(Gas[vehicle] > GetGasMax(GetVehicleModel(vehicle)))
{
Gas[vehicle] = GetGasMax(GetVehicleModel(vehicle));
}
}
}
}
return 1;
}Mach bei public fillup:
new vID = GetPlayerVehicleID(playerid);
NoFuel[vID] = 0;
und bei /motor an wenn du das hast:
new vID = GetPlayerVehicleID(playerid);
if(NoFuel[vID] == 1)
{
SendClientMessage(playerid, COLOR_RED, "Du hast keinen tank mehr du kannst den motor nicht starten!");
return 1;
}
//edit -
-
-
-
zuzeit ist es so ich habe versucht meine tankstellen zu einem biz zu machen das jede tanke ihren eingenden preis hat aber das klappt nicht so ganz die tankstelle beziht die falschen usw...
das wegen will ich es immer neu definiren pro tage...
also z.B
public fillup()
public fillup2()
usw
aber ich weiß nicht wie das so ganz funktionirt das wegen brauch ich ein bug freies public fillup -
Habe ich schon Der Tacho is gay aber finde das Autohaus nich .. sonst würde ich mir das ja zurecht biegen
log dich ingame mal ein mit /rcon login [PASSWORD]
und dan mach /dtdcamenu da kannst du zu einem den tacho auschalten und dir ein eigenden machen...
und zum anderen kannst du da die autohauser umstellen wo sie sein sollen usw -
Hallo.
Zusammen ich habe im forum mal nach tut geguck für ein MYSQL login/register..
ich benutze standart GF script mit den Standart saveing usw....
aber bei mir spackt das manchmal so mit den acc......
und das wegen möchte ich mir gerne ein MYSQL login/register/daten save einbauen aber ich habe keine anung wie...
Kann mir einer ein gutes tut geben was für GF ist?//edit
-
Wie hast du VehicleID definiert?
kp
ich hab einfach stadt i in vehicelid das umgeschrieben -
jo danke ich habs vorher schon mal probirt nur da kahmen errors das wegen aber ich gucks mir jetzt nochmal an
hm jetzt stimmt alles so weit nur nun wenn man z.B das auto leer gefahren hat bekommt man es nicht an aber wenn man in ein anderes auto einsteigen will wo 100 % tank drinne ist und /motor an macht dann kommt diese fahrzeug hat kein benzin mehr.
new vehicleid;
if(NoFuel[vehicleid] == 1)
{
SendClientMessage(playerid, COLOR_RED, "Du hast keinen tank mehr du kannst den motor nicht starten!");
return 1;
}
//edit -
-
Hallo.
Ich habe versucht wenn man kein tank mehr im fahrzeug hat das man den motor dan nicht mehr anbekommt und das ganze sieht folgen aus:
bei public CheckGas
NoFuel[i] = 1;
bei public Fillup
dar muss das rein wenn man getankt hat das es wieder auf 0 ist:
NoFuel[i] = 0;
und bei /motor an
if(NoFuel[i] == 1)
{
SendClientMessage(playerid, COLOR_RED, "Du hast keinen tank mehr du kannst den motor nicht starten!");
return 1;
}
Aber das funktionirt nicht so ganz da wird dan beim spieler so in der art nofuel 1 gesatz und nicht dem auto... -
und nur mal so zu info nur weil es eine zweite abfrage ist muss es nicht an else if liegen!
ich mach schon öfter mit einmal if und dan nochmal mit if abfragen!Machs mal so:
if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid, COLOR_RED, "Du bist nicht der Fahrer!");
return 1;
}jo danke an ! habe ich da nicht mehr gedacht
-
Hallo.
Wie muss ich das machen das ein befehl z.B im auto nur der fahrer machen kann:if(****)// wo die ***** sind soll das rein das er guck ob er der fahrer das autos ist
{
SendClientMessage(playerid, COLOR_RED,"Du bist nicht der fahrer!");
return 1;
}
es soll für das sein:ocmd:motor(playerid,params[])
{
new status[4];
if(sscanf(params,"s",status))return SendClientMessage(playerid,0xFF0000,"Info: /motor [an/aus]");
new engine,lights,alarm,doors,bonnet,boot,objective;
if(NoFuel[playerid] == 1)
{
SendClientMessage(playerid, COLOR_RED, "Du hast keinen tank mehr du kannst den motor nicht starten!");
return 1;
}
if(IsPlayerInAnyVehicle(playerid))
{
new vid = GetPlayerVehicleID(playerid);
if(strcmp(status,"an",true) == 0)
{
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
motor[vid] = true;
SendClientMessage(playerid,0xFF0000,"Du hast den Motor gestartet!");
}
else
if(strcmp(status,"aus",true) == 0)
{
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
motor[vid] = false;
SendClientMessage(playerid,0xFF0000,"Du hast den Motor abgewürgt!");
}
}
return 1;
}das funktionirt nicht:
if(!GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid, COLOR_RED, "Du bist nicht der Fahrer!");
return 1;
}
und wenn ich es so mache:
if(!GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
SendClientMessage(playerid, COLOR_RED, "Du bist nicht der Fahrer!");
return 1;
}
kann es nur der beifahrer machen
//edit -
Hallo zusammen.
Kann mir einer den ganz normalen und bug freien public fillup villt posten??Meiner sieht so aus:
public Fillup()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new VID;
new FillUp;
new string[128];
VID = GetPlayerVehicleID(i);
FillUp = GetGasMax(GetVehicleModel(VID)) - Gas[VID];
if(Refueling[i] == 1)
{
if(GetPlayerMoney(i) >= FillUp+4)
{
Gas[VID] += FillUp;
FillUp = FillUp * TankstellenInfo[i][tsEntranceCost];
format(string,sizeof(string),"* Fahrzeug für $%d aufgetankt. (Preis pro Liter: $%d)",FillUp,tsEntranceCost);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
GivePlayerMoney(i, - FillUp);
TankstellenInfo[i][tsProducts] -= 120;
TankstellenInfo[i][tsTill] += FillUp;
Refueling[i] = 0;
UnFreezePlayer(i);
}
else
{
format(string,sizeof(string),"* Du hast nicht genug Geld zum Tanken, Kosten: $%d.",FillUp);
SendClientMessage(i,COLOR_LIGHTBLUE,string);
}
}
}
}
return 1;
}aber ich brauche den standar mässigen und bug freien
//edit
-
nice gemacht
nur gibt es bei der map ein fähler und zwahr im schiff drinne also wo die hydra einkommen sieht man nach drausen und nach oben allesmap:
7/10
Arbeit:
8/10 -
bei mir haben die fährrader immer noch ein motor
-
habe das rein und nun kann ich kein /motor an mehr machen???
wahr mein fehler
//edit
-
eh und wo muss das hin ihr?
ocmd:motor(playerid,params[])
{
new status[4];
if(sscanf(params,"s",status))return SendClientMessage(playerid,0xFF0000,"Info: /motor [an/aus]");
new engine,lights,alarm,doors,bonnet,boot,objective;
if(IsPlayerInAnyVehicle(playerid))
{
new vid = GetPlayerVehicleID(playerid);
if(strcmp(status,"an",true) == 0)
{
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
motor[vid] = true;
SendClientMessage(playerid,0xFF0000,"Du hast den Motor gestartet!");
}
else
if(strcmp(status,"aus",true) == 0)
{
GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
motor[vid] = false;
SendClientMessage(playerid,0xFF0000,"Du hast den Motor abgewürgt!");
}
}
return 1;
} -
und wie mach ich das