#include #include #define FILTERSCRIPT #define COLOR_RED 0xFF0000FF #define COLOR_YELLOW 0xFFFF00FF #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 new Call[MAX_PLAYERS]; new handystatus[MAX_PLAYERS]; new IstAmAnrufen[MAX_PLAYERS]; public OnFilterScriptInit() { print("\n|-------------------------------------|"); print(" Handysystem (c) by |GSR|Honig"); print("|------------------------------------|\n"); return 1; } public OnFilterScriptExit() { return 1; } public OnPlayerRequestClass(playerid, classid) { return 1; } public OnPlayerConnect(playerid) { SendClientMessage(playerid,COLOR_YELLOW,".:: Dieser Server benutzt das Handysystem Ho_Handy v.1.0! :."); handystatus[playerid] = 1; return 1; } public OnPlayerDisconnect(playerid, reason) { return 1; } public OnPlayerSpawn(playerid) { return 1; } public OnPlayerDeath(playerid, killerid, reason) { return 1; } public OnVehicleSpawn(vehicleid) { return 1; } public OnVehicleDeath(vehicleid, killerid) { return 1; } public OnPlayerText(playerid, text[]) { if(Call[playerid] != -1) { new string[128]; new pID = Call[playerid]; format(string,sizeof(string),"[Handy] %s",text); SendClientMessage(playerid,COLOR_YELLOW,string); format(string,sizeof(string),"[Handy] %s",text); SendClientMessage(pID,COLOR_YELLOW,string); } return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(call,4,cmdtext); dcmd(hangup,6,cmdtext); dcmd(togphone,8,cmdtext); return 0; } //============================================================================// dcmd_call(playerid,params[]) { new pid; if(sscanf(params,"i",pid)) return SendClientMessage(playerid,COLOR_RED,"Benutze /call [ID]"); if(!IsPlayerConnected(pid)) return SendClientMessage(playerid,COLOR_RED,"SpielerID wurde nicht gefunden!"); if(IstAmAnrufen[pid] == 1) return SendClientMessage(playerid,COLOR_RED,"Der Spieler ist zurzeit nicht erreichbar!"); if(handystatus[pid] == 0) return SendClientMessage(playerid,COLOR_RED,"Der Spieler hat sein Handy aus!"); if(handystatus[playerid] == 0) return SendClientMessage(playerid,COLOR_RED,"Du hast dein Handy aus!"); new string[128]; new pidname[MAX_PLAYER_NAME]; new name[MAX_PLAYER_NAME]; GetPlayerName(pid,pidname,sizeof(pidname)); GetPlayerName(playerid,name,sizeof(name)); format(string,sizeof(string),"Du nimmst dein Handy raus und versuchst %s anzurufen!",pidname); SendClientMessage(playerid,COLOR_YELLOW,string); format(string,sizeof(string),"** Eingehender Anruf von %s! Du nimmst ab...",name); SendClientMessage(pid,COLOR_YELLOW,string); IstAmAnrufen[playerid] = 1; IstAmAnrufen[pid] = 1; Call[pid] = playerid; Call[playerid] = pid; return 1; } dcmd_hangup(playerid,params[]) { #pragma unused params if(Call[playerid] == 0) return SendClientMessage(playerid,COLOR_RED,"Du bist nicht am telefonieren!"); new pid = Call[playerid]; IstAmAnrufen[playerid] = 0; IstAmAnrufen[pid] = 0; Call[pid] = -1; Call[playerid] = -1; SendClientMessage(playerid,COLOR_RED,"Du hast aufgelegt!"); SendClientMessage(pid,COLOR_RED,"Der Gesprächspartner hat aufgelegt!"); return 1; } dcmd_togphone(playerid,params[]) { #pragma unused params if(Call[playerid] != -1) return SendClientMessage(playerid,COLOR_RED,"Während einem Gespräch kannst du dein Handy nicht ausschalten!"); if(handystatus[playerid] == 1) { handystatus[playerid] = 0; SendClientMessage(playerid,COLOR_RED,"Du schaltest dein Handy aus!"); } else if(handystatus[playerid] == 0) { handystatus[playerid] = 1; SendClientMessage(playerid,COLOR_YELLOW,"Du schaltest dein Handy aus!"); } return 1; } public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { return 1; } public OnPlayerEnterCheckpoint(playerid) { return 1; } public OnPlayerLeaveCheckpoint(playerid) { return 1; } public OnPlayerEnterRaceCheckpoint(playerid) { return 1; } public OnPlayerLeaveRaceCheckpoint(playerid) { return 1; } public OnRconCommand(cmd[]) { return 1; } public OnPlayerRequestSpawn(playerid) { return 1; } public OnObjectMoved(objectid) { return 1; } public OnPlayerObjectMoved(playerid, objectid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { return 1; } public OnVehicleMod(playerid, vehicleid, componentid) { return 1; } public OnVehiclePaintjob(playerid, vehicleid, paintjobid) { return 1; } public OnVehicleRespray(playerid, vehicleid, color1, color2) { return 1; } public OnPlayerSelectedMenuRow(playerid, row) { return 1; } public OnPlayerExitedMenu(playerid) { return 1; } public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid) { return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { return 1; } public OnRconLoginAttempt(ip[], password[], success) { return 1; } public OnPlayerUpdate(playerid) { return 1; } public OnPlayerStreamIn(playerid, forplayerid) { return 1; } public OnPlayerStreamOut(playerid, forplayerid) { return 1; } public OnVehicleStreamIn(vehicleid, forplayerid) { return 1; } public OnVehicleStreamOut(vehicleid, forplayerid) { return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { return 1; } public OnPlayerClickPlayer(playerid, clickedplayerid, source) { return 1; }