Hallo Leute,
Ich brauche mal hilfe bei meinen Notrufsystem,
was ich nun endlich mal gescriptet habe, da mein Server schon auf ist.
Deswegen ist es wichtig, das zu haben, da ich jedoch noch Anfänger in Scripten für mich bin, brauch ich da mal akribische hilfe.
Ich willd abei nicht hören Haha abkopier oder so, wenn doch sowas kommt, dann bitte per Pn, denn das ist Spam,
ich brauch hier meine Hilfe, ihr msst das immer so angehen, viele User die das selber Problem haben wie ich, gucken vllt, auch in diesen
Thread und suchen hilfe, und wenn da dann so was sinnloses steht, dann würde ich es nicht gut finden, da das Theme hilfreich sein soll,
also bitte unterlasst es. Das war das Wort zum Samstag ^^.
Zum Problem
Mein Befehl /serice geht nicht.
Wenn ich zb. /service Medic eingebe zeigt er mir diesen Text an.
INFO: /service [Taxi/Oamt/ADAC/Medic/SAPD]
Ich gebe alle Parameter richtig ein, doch er zeigt nur die Info ein.
Wisst ihr woran das liegt ? Denn beim /accept befehl ist es nicht anders.
Deswegen würde ich gerne eure hilfe annehmen, deswegen wende ich mich mal an euch.
Code Service
ocmd:service(playerid,params[])
{
new tmp[64];
if(sscanf(params,"s[128]",tmp))return SendClientMessage(playerid,grau,"INFO: /service [Taxi/Oamt/ADAC/Medic/SAPD]");
if(tod[playerid] == 1)return SendClientMessage(playerid,weiss,"Du bist verwundet");
if(!strcmp(tmp,"SAPD",true))
{
new pstring[128];
format(pstring,sizeof(pstring),"%s hat einen Streifenwagen angefordert. Gib /accept SAPD ein um anzunehmen.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerInFrak(i,1))
{
SendClientMessage(i,0x33CCFFAA,pstring);
}
}
SendClientMessage(playerid,0x33CCFFAA,"Du hast einen Streifenwagen angefordert, warte auf Antwort");
willlspd[playerid]=1;
return 1;
}
if(!strcmp(tmp,"Medic",true))
{
new mstring[128];
format(mstring,sizeof(mstring),"%s hat einen Medic angefordert. Gib /accept Medic ein um anzunehmen.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerInFrak(i,2))
{
SendClientMessage(i,0x33CCFFAA,mstring);
}
}
SendClientMessage(playerid,0x33CCFFAA,"Du hast einen Medic angefordert, warte auf Antwort");
willmedic[playerid]=1;
return 1;
}
if(!strcmp(tmp,"Taxi",true))
{
return SendClientMessage(playerid,grau,"Noch nicht möglich");
}
if(!strcmp(tmp,"Oamt",true))
{
new ostring[128];
format(ostring,sizeof(ostring),"%s hat das Oamt angefordert. Gib /accept Oamt ein um anzunehmen.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerInFrak(i,3))
{
SendClientMessage(i,0x33CCFFAA,ostring);
}
}
SendClientMessage(playerid,0x33CCFFAA,"Du hast das Oamt angefordert, warte auf Antwort");
willoamt[playerid]=1;
return 1;
}
if(!strcmp(tmp,"ADAC",true))
{
new astring[128];
format(astring,sizeof(astring),"%s hat einen Notruf abgesetzt. Gib /accept Adac ein um anzunehmen.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
if(IsPlayerInFrak(i,4))
{
SendClientMessage(i,0x33CCFFAA,astring);
}
}
SendClientMessage(playerid,0x33CCFFAA,"Du hast einen Mechaniker angefordert, warte auf Antwort");
willadac[playerid]=1;
}
return 1;
}
Der Code accept
ocmd:accept(playerid,params[])
{
new string[128];
if(sscanf(params,"s[128]",string))return SendClientMessage(playerid,weiss,"INFO: /accept [SAPD,Medic,Oamt,Adac]");
accept(playerid,string);
return 1;
}
Der Stock Code accept
stock accept(playerid,tmp[])
{
new acceptstr[128];
if(!strcmp(tmp,"Medic",true))
{
if(IsPlayerInFrak(playerid,2))
{
if(Dienst[playerid]==0)return SendClientMessage(playerid,weiss,"Nicht im Dienst.");
format(acceptstr,sizeof(acceptstr),"Notarzt %s hat deinen Notruf angenommen und ist unterwegs zu dir.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
new string[128];
if(willmedic[i]==0)continue;
SendClientMessage(i,0x33CCFFAA,acceptstr);
willmedic[i]=0;
new nachricht[128];
format(nachricht,sizeof(nachricht),"Du hast den Auftrag von %s angenommen. Fahre zum Checkpoint.",SpielerName(i));
SendClientMessage(playerid,0x33CCFFAA,nachricht);
format(string,sizeof(string),"%s hat den Auftrag von %s angenommen.",SpielerName(playerid),SpielerName(i));
new Float:xc,Float:yc,Float:zc;
GetPlayerPos(i,xc,yc,zc);
SetPlayerCheckpoint(playerid,xc,yc,zc,2);
return 1;
}
SendClientMessage(playerid,weiss,"Keiner hat ein Medic angefordert");
return 1;
}
else
{
SendClientMessage(playerid,weiss,"Du bist kein Medic.");
return 1;
}
}
if(!strcmp(tmp,"Sapd",true))
{
if(IsPlayerInFrak(playerid,1))
{
if(Dienst[playerid]==0)return SendClientMessage(playerid,weiss,"Nicht im Dienst.");
format(acceptstr,sizeof(acceptstr),"Officer %s hat deinen Notruf angenommen und ist unterwegs zu dir.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
new string[128];
if(willmedic[i]==0)continue;
SendClientMessage(i,0x33CCFFAA,acceptstr);
willmedic[i]=0;
new nachricht[128];
format(nachricht,sizeof(nachricht),"Du hast den Auftrag von %s angenommen. Fahre zum Checkpoint.",SpielerName(i));
SendClientMessage(playerid,0x33CCFFAA,nachricht);
format(string,sizeof(string),"%s hat den Auftrag von %s angenommen.",SpielerName(playerid),SpielerName(i));
new Float:xc,Float:yc,Float:zc;
GetPlayerPos(i,xc,yc,zc);
SetPlayerCheckpoint(playerid,xc,yc,zc,2);
return 1;
}
SendClientMessage(playerid,weiss,"Keiner hat ein Officer angefordert");
return 1;
}
else
{
SendClientMessage(playerid,weiss,"Du bist kein Officer.");
return 1;
}
}
if(!strcmp(tmp,"Adac",true))
{
if(IsPlayerInFrak(playerid,4))
{
if(Dienst[playerid]==0)return SendClientMessage(playerid,weiss,"Nicht im Dienst.");
format(acceptstr,sizeof(acceptstr),"Mechaniker %s hat deinen Notruf angenommen und ist unterwegs zu dir.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
new string[128];
if(willmedic[i]==0)continue;
SendClientMessage(i,0x33CCFFAA,acceptstr);
willmedic[i]=0;
new nachricht[128];
format(nachricht,sizeof(nachricht),"Du hast den Auftrag von %s angenommen. Fahre zum Checkpoint.",SpielerName(i));
SendClientMessage(playerid,0x33CCFFAA,nachricht);
format(string,sizeof(string),"%s hat den Auftrag von %s angenommen.",SpielerName(playerid),SpielerName(i));
new Float:xc,Float:yc,Float:zc;
GetPlayerPos(i,xc,yc,zc);
SetPlayerCheckpoint(playerid,xc,yc,zc,2);
return 1;
}
SendClientMessage(playerid,weiss,"Keiner hat ein Adac angefordert");
return 1;
}
else
{
SendClientMessage(playerid,weiss,"Du bist kein Mechaniker.");
return 1;
}
}
if(!strcmp(tmp,"Oamt",true))
{
if(IsPlayerInFrak(playerid,3))
{
if(Dienst[playerid]==0)return SendClientMessage(playerid,weiss,"Nicht im Dienst.");
format(acceptstr,sizeof(acceptstr),"Oamtler %s hat deinen Notruf angenommen und ist unterwegs zu dir.",SpielerName(playerid));
for (new i = 0; i<MAX_PLAYERS; i++)
{
new string[128];
if(willmedic[i]==0)continue;
SendClientMessage(i,0x33CCFFAA,acceptstr);
willmedic[i]=0;
new nachricht[128];
format(nachricht,sizeof(nachricht),"Du hast den Auftrag von %s angenommen. Fahre zum Checkpoint.",SpielerName(i));
SendClientMessage(playerid,0x33CCFFAA,nachricht);
format(string,sizeof(string),"%s hat den Auftrag von %s angenommen.",SpielerName(playerid),SpielerName(i));
new Float:xc,Float:yc,Float:zc;
GetPlayerPos(i,xc,yc,zc);
SetPlayerCheckpoint(playerid,xc,yc,zc,2);
return 1;
}
SendClientMessage(playerid,weiss,"Keiner hat ein Oamt angefordert");
return 1;
}
else
{
SendClientMessage(playerid,weiss,"Du bist kein Oamtler.");
return 1;
}
}
return 1;
}
Wenn ich anehmen will passiert das selbe, es wird nur die Info angezeigt.