HeyHoo,
habe einen Fehler im Call-System.
Hier einmal meine Befehle:
ocmd:pickup(playerid,params[])
{
if(TelefoniertGerade[playerid] == 1)
{
SendClientMessage(playerid, Grau, "Du Telefonierst bereits!");
return 1;
}
else
{
if(HandyKlingelt[playerid] == 1)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(SpielerInfo[playerid][pHandyAkku] < 10)
{
SCM(playerid,Weiss,"Dein Handy hat zu wenig Akku zum telefonieren, lade es erst wieder auf!");
}
else
{
new caller = Caller[playerid];
new string[128];
TelefoniertGerade[playerid] = 1;
SendClientMessage(caller,Grau, "Ihr Anruf wurde angenommen!");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s nimmt sein Handy raus.", PlayerName(playerid));
SetPlayerSpecialAction(playerid,11);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
RingTone[playerid] = 0;
return 1;
}
}
}
}
}
return 1;
}
ocmd:hangup(playerid,params[])
{
if(TelefoniertGerade[playerid] == 1)
{
new caller = Caller[playerid];
if(TelefoniertGerade[caller] == 1)
{
SetPlayerSpecialAction(playerid,13);
SetPlayerSpecialAction(caller,13);
SCM(playerid,Weiss,"Du steckst dein Handy weg!");
SCM(caller,Weiss,"Der Gesprähspartner hat das Gespräch beendet!");
TelefoniertGerade[playerid] = 0;
TelefoniertGerade[caller] = 0;
}
}
return 1;
}
{
if(TelefoniertGerade[playerid] == 1)
{
new caller = Caller[playerid];
if(TelefoniertGerade[caller] == 1)
{
SetPlayerSpecialAction(playerid,13);
SetPlayerSpecialAction(caller,13);
SCM(playerid,Weiss,"Du steckst dein Handy weg!");
SCM(caller,Weiss,"Der Gesprähspartner hat das Gespräch beendet!");
TelefoniertGerade[playerid] = 0;
TelefoniertGerade[caller] = 0;
}
}
return 1;
}
ocmd:h(playerid,params[])
{
if(TelefoniertGerade[playerid] == 1)
{
new caller = Caller[playerid];
if(TelefoniertGerade[caller] == 1)
{
SetPlayerSpecialAction(playerid,13);
SetPlayerSpecialAction(caller,13);
SCM(playerid,Weiss,"Du steckst dein Handy weg!");
SCM(caller,Weiss,"Der Gesprähspartner hat das Gespräch beendet!");
TelefoniertGerade[playerid] = 0;
TelefoniertGerade[caller] = 0;
}
}
return 1;
}
{
if(TelefoniertGerade[playerid] == 1)
{
new caller = Caller[playerid];
if(TelefoniertGerade[caller] == 1)
{
SetPlayerSpecialAction(playerid,13);
SetPlayerSpecialAction(caller,13);
SCM(playerid,Weiss,"Du steckst dein Handy weg!");
SCM(caller,Weiss,"Der Gesprähspartner hat das Gespräch beendet!");
TelefoniertGerade[playerid] = 0;
TelefoniertGerade[caller] = 0;
}
}
return 1;
}
ocmd:call(playerid,params[])
{
if(SpielerInfo[playerid][pHandy] == 1)
{
new string[128];
new handy;
if(sscanf(params,"i",handy))return SCM(playerid,Grau,"Benutze: /call [Handynummer]");
{
if(TelefoniertGerade[playerid] != 0)
{
SCM(playerid,Weiss,"Du telefonierst schon!");
return 1;
}
else
{
format(string, sizeof(string), "* %s nimmt sein Handy raus.", PlayerName(playerid));
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
for(new i=0; i<MAX_PLAYERS; i++)
{
if(SpielerInfo[i][pHandynummer] == handy)
{
if(IsPlayerConnected(i))
{
if(SpielerInfo[playerid][pHandynummer] == handy)
{
SCM(playerid,Weiss,"Du kannst dich nicht selber anrufen!");
return 1;
}
else
{
if(TelefoniertGerade[i] != 0)
{
SCM(playerid,Grau,"Besetzt...");
return 1;
}
else
{
if(SpielerInfo[i][pHandyStatus] == 1)
{
if(SpielerInfo[playerid][pHandyAkku] > 10)
{
if(SpielerInfo[i][pHandyAkku] > 10)
{
new stringg[128];
format(stringg, sizeof(stringg), "* %s 's Handy klingelt!", PlayerName(i));
format(string, sizeof(string), "Dein Handy klingelt, Anrufer: %s (Abnehmen: /pickup)!", PlayerName(playerid));
SendClientMessage(i, COLOR_YELLOW, string);
ProxDetector(30.0, i, stringg, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SetPlayerSpecialAction(playerid,11);
RingTone[i] = 10;
HandyKlingelt[i] = 1;
Caller[i] = playerid;
Anrufer[playerid] = i;
SCM(playerid,Grau,"Benutze /hangup zum Auflegen.");
}
else
{
SCM(playerid,Weiss,"Der Handyakkustand dieses Spielers ist zu niedrig zum telefonieren!");
}
}
else
{
SCM(playerid,Weiss,"Dein Handy hat zu wenig Akku zum telefonieren, lade es erst wieder auf!");
}
}
else
{
SCM(playerid,Weiss,"Das Handy dieses Spielers ist aus!");
}
}
}
}
}
}
}
}
}
return 1;
}
{
if(SpielerInfo[playerid][pHandy] == 1)
{
new string[128];
new handy;
if(sscanf(params,"i",handy))return SCM(playerid,Grau,"Benutze: /call [Handynummer]");
{
if(TelefoniertGerade[playerid] != 0)
{
SCM(playerid,Weiss,"Du telefonierst schon!");
return 1;
}
else
{
format(string, sizeof(string), "* %s nimmt sein Handy raus.", PlayerName(playerid));
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
for(new i=0; i<MAX_PLAYERS; i++)
{
if(SpielerInfo[i][pHandynummer] == handy)
{
if(IsPlayerConnected(i))
{
if(SpielerInfo[playerid][pHandynummer] == handy)
{
SCM(playerid,Weiss,"Du kannst dich nicht selber anrufen!");
return 1;
}
else
{
if(TelefoniertGerade[i] != 0)
{
SCM(playerid,Grau,"Besetzt...");
return 1;
}
else
{
if(SpielerInfo[i][pHandyStatus] == 1)
{
if(SpielerInfo[playerid][pHandyAkku] > 10)
{
if(SpielerInfo[i][pHandyAkku] > 10)
{
new stringg[128];
format(stringg, sizeof(stringg), "* %s 's Handy klingelt!", PlayerName(i));
format(string, sizeof(string), "Dein Handy klingelt, Anrufer: %s (Abnehmen: /pickup)!", PlayerName(playerid));
SendClientMessage(i, COLOR_YELLOW, string);
ProxDetector(30.0, i, stringg, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
SetPlayerSpecialAction(playerid,11);
RingTone[i] = 10;
HandyKlingelt[i] = 1;
Caller[i] = playerid;
Anrufer[playerid] = i;
SCM(playerid,Grau,"Benutze /hangup zum Auflegen.");
}
else
{
SCM(playerid,Weiss,"Der Handyakkustand dieses Spielers ist zu niedrig zum telefonieren!");
}
}
else
{
SCM(playerid,Weiss,"Dein Handy hat zu wenig Akku zum telefonieren, lade es erst wieder auf!");
}
}
else
{
SCM(playerid,Weiss,"Das Handy dieses Spielers ist aus!");
}
}
}
}
}
}
}
}
}
return 1;
}
public OnPlayerText(playerid, text[])
{
new string[128];
if(realchat)
{
if(SpielerInfo[playerid][pMute] == 0)
{
if(TelefoniertGerade[playerid] == 1)
{
new Partner = Caller[playerid];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s sagt (Handy): %s", sendername, text);
SCM(Partner,COLOR_YELLOW,string);
format(string, sizeof(string), "Du sagst (Handy): %s",text);
SCM(playerid,COLOR_YELLOW,string);
return 0;
}
else if(TelefoniertGerade[playerid] == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s sagt: %s", sendername, text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
return 0;
}
}
else if(SpielerInfo[playerid][pMute] != 0)
{
SendClientMessage(playerid,Rot,"Du bist Gemutet!");
return 0;
}
}
return 1;
}
{
new string[128];
if(realchat)
{
if(SpielerInfo[playerid][pMute] == 0)
{
if(TelefoniertGerade[playerid] == 1)
{
new Partner = Caller[playerid];
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s sagt (Handy): %s", sendername, text);
SCM(Partner,COLOR_YELLOW,string);
format(string, sizeof(string), "Du sagst (Handy): %s",text);
SCM(playerid,COLOR_YELLOW,string);
return 0;
}
else if(TelefoniertGerade[playerid] == 0)
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s sagt: %s", sendername, text);
ProxDetector(20.0, playerid, string,COLOR_FADE1,COLOR_FADE2,COLOR_FADE3,COLOR_FADE4,COLOR_FADE5);
return 0;
}
}
else if(SpielerInfo[playerid][pMute] != 0)
{
SendClientMessage(playerid,Rot,"Du bist Gemutet!");
return 0;
}
}
return 1;
}
Keine Errors im Script, aber wenn Ich jmd. Anrufe, dieser abnimmt, kann er das was Ich schreibe nicht lesen, warum?
Was er schreibt, kann ich lesen.
lg
Deagle