Beiträge von ohitsandrzej
-
-
Okay, und wie mach ich das?
PAWN Quelltext
1
2
3
4
5
6
7
8
9
10
11
new bool:messagesend[MAX_PLAYERS];if(vhp < 350.0 && messagesend[i] == false)
{
SendClientMessage(i,Rot,"Du hast einen Motorschaden.");
SendClientMessage(i,Rot,"Ruf den Abschleppdienst, so dass ein Mechaniker dein Auto reparieren kann.");
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
messagesend[i] = true;
Engine[veh] = false;
}So sollte es gehen, keine Ahnung wie man es anders lösen sollte.
Weil damit geht das nur bei einem Auto..
-
Bringt mir nix?
Ich möchte das er nicht die Nachricht spammt. Das muss doch einfacher gehen, oder nicht?
Oder muss ich SetTimerEx verwenden?ZitatEinfach den check NUR für die SendClientMessage machen?
Wie meinst du das? -
Grad getestet..
Dann funktioniert der Timer nur 1x. Wenn man nochmal ein Auto kaputt macht funktioniert der Timer nicht mehr.
-
Order im Scriptfiles Order vorhanden?
-
SetTimer("Motorschaden",1000,1);
Jede Sekunde -
Guten Abend,
hab soweit mein Motorschaden System fertig. Doch er spammt die Nachricht jede Sekunde.
public Motorschaden(){
for(new i = 0; i < MAX_PLAYERS; i++){
if(!IsPlayerNPC(i)){
if(IsPlayerConnected(i)){
if(GetPlayerState(i) == PLAYER_STATE_DRIVER){
new veh,Float:vhp;
veh = GetPlayerVehicleID(i);
GetVehicleHealth(veh,vhp);
if(vhp < 350.0){
SendClientMessage(i,Rot,"Du hast einen Motorschaden.");
SendClientMessage(i,Rot,"Ruf den Abschleppdienst, so dass ein Mechaniker dein Auto reparieren kann.");
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[veh] = false;
break;
}
}
}
}
}
return 1;
} -
Das Funktioniert wie gesagt..
Das Problem ist ich kann trotzdem den Motor starten obwohl ich den Motorschaden habe. -
Guten Abend,
ich habe mir ein Motorschaden System gescriptet. Das wenn das Auto unter 350hp hat dann stehen bleibt und der Text kommt. Der Fehler ist: wenn ich nochmal auf N drücke (zum Motor anmachen) funktioniert es. Obowhl da stehen sollte Das Fahrzeug hat ein Motorschaden.
if(newkeys == KEY_NO){
if(GetPlayerVehicleSeat(playerid) == 0){
new car = GetPlayerVehicleID(playerid);
if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)return 1;
new Float:vhp;
GetVehicleHealth(car, vhp);
if(vhp < 350.0){
SendClientMessage(playerid,Rot,"Dieses Fahrzeug hat einen Motorschaden.");
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = false;
}
else{
if(Engine[car] == false){
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = true;
}
else{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = false;
}
}
}
} -
-
Guten Tag,
meine Funktion wird nicht aufgerufen, weiß einer warum? o:
public OnPlayerStateChange(playerid,newstate,oldstate){
if(newstate == PLAYER_STATE_DRIVER){
new vehicleid = GetPlayerVehicleID(playerid), Float:vhp;
GetVehicleHealth(vehicleid, vhp);
if(vhp < 350.0){
SendClientMessage(playerid,Rot,"Dieses Fahrzeug hat einen Motorschaden.");
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[vehicleid] = false;
printf("steigt ein");
return 1;
}
} -
Eintreten !
-
Ein weiteres Problem, sobald ich 350 Hp noch hab, steig ich aus und steig wieder ein und kann weiter fahren.
Wo ist diesmal der Fehler?
if(newkeys == KEY_NO){
if(GetPlayerVehicleSeat(playerid) == 0){
new car = GetPlayerVehicleID(playerid);
if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510)return 1;
new Float:vhp;
GetVehicleHealth(car, vhp);
if(vhp < 350){
SendClientMessage(playerid,Rot,"Dieses Fahrzeug hat einen Motorschaden.");
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = false;
return 1;
}
else{
if(Engine[car] == false){
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = true;
}
else{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = false;
}
}
}
}if(newstate == PLAYER_STATE_DRIVER){
new vehicleid = GetPlayerVehicleID(playerid), Float:vhp;
GetVehicleHealth(vehicleid, vhp);
if(vhp < 350){
SendClientMessage(playerid,Rot,"Dieses Fahrzeug hat einen Motorschaden.");
GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[vehicleid] = false;
}
} -
Okay, es funktioniert. Trotzdem kommt die Nachricht?
-
Kann mir einer sagen warum die Meldung immer noch kommt?
Bin verzweifelt ._. -
Weiß jemand eine Lösung?
Es kommt trotzdem die Meldung. -
Vielen Dank !
-
Was funktioniert denn nicht?
Max NPC hoch genug gemacht? -
Kennt vielleicht jemand das besagte Filterscript? Und auch den Link dazu?
-
Guten Tag,
obwohl mein Auto 1000 Health besitzt sagt er das er ein Motor Schaden hätte.
Wo liegt der Fehler?
if(newkeys == KEY_NO){
if(GetPlayerVehicleSeat(playerid) == 0){
new car = GetPlayerVehicleID(playerid);
if(GetVehicleModel(car) == 509 || GetVehicleModel(car) == 481 || GetVehicleModel(car) == 510){return 1;}
new vehicleid = GetPlayerVehicleID(playerid), Float:vhp;
if(GetVehicleHealth(vehicleid, vhp) <= 300)
{
SendClientMessage(playerid,Rot,"Dieses Fahrzeug hat einen Motorschaden.");
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = false;
}
else if(Engine[car] == false){
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = true;
}
else{
GetVehicleParamsEx(car,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(car,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[car] = false;
}
}
}