/************************************************************* Chemtrails Filterscript -» Author : robin_be (yugecin) -» Release Date : 25th March 2012 -» Description : Chemtrails for planes (not at-400 and andromada) -» Video : http://www.youtube.com/watch?v=r0MTiZ9xppU -» forum post : http://forum.sa-mp.com/showthread.php?t=328612 **************************************************************/ #include new ctrails[MAX_PLAYERS][2]; public OnFilterScriptInit() return print("[FS]ChemTrails Loaded!"); public OnFilterScriptExit() { for(new i=0; i < MAX_PLAYERS+1; i++){ if(ctrails[i][0]){ DestroyObject(ctrails[i][0]); DestroyObject(ctrails[i][1]); ctrails[i][0] = 0; } } return print("[FS]ChemTrails Unloaded!"); } public OnPlayerCommandText(playerid, cmdtext[]) { if(!strcmp(cmdtext, "/ctrails", true)) { //460 skimmer //520 hydra //511 beagle //512 cropduster //513 stuntplane //593 dodo //553 nevada //476 rustler //519 shamal if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, 0xFF0000AA, "[Chemtrails] {FFFFFF}You must be in a supported plane!"); if(GetPlayerState(playerid) != PLAYER_STATE_DRIVER) return SendClientMessage(playerid, 0xFF0000AA, "[Chemtrails] {FFFFFF}You must be the driver!"); new Float:x, Float:y, Float:z; switch(GetVehicleModel(GetPlayerVehicleID(playerid))){ case 460: { x = 5.3; y = 0.0; z = -0.6; } case 476: { x = 5.3; y = 0.9; z = -2.0; } case 511: { x = 10.3; y = -1.0; z = -1.25; } case 512: { x = 5.3; y = 1.0; z = -0.4; } case 513: { x = 4.0; y = 0.0; z = -1.0; } case 519: { x = 9.7; y = -2.0; z = -1.8; } case 520: { x = 4.75; y = -1.0; z = -2.0; } case 553: { x = 14.0; y = 0.5; z = -1.25; } case 593: { x = 6.0; y = 0.0; z = -0.5; } default: return SendClientMessage(playerid, 0xFF0000AA, "[Chemtrails] {FFFFFF}You have to be in a supported plane!"); } if(ctrails[playerid][0]){ DestroyObject(ctrails[playerid][0]); DestroyObject(ctrails[playerid][1]); ctrails[playerid][0] = 0; return 1; } ctrails[playerid][0] = CreateObject(18728, 0.0, 0.0, 0.0, 0.0, 0.0, 256.0); ctrails[playerid][1] = CreateObject(18728, 0.0, 0.0, 0.0, 0.0, 0.0, 256.0); AttachObjectToVehicle(ctrails[playerid][0], GetPlayerVehicleID(playerid), x, y, z, 0.0, 0.0, 0.0); AttachObjectToVehicle(ctrails[playerid][1], GetPlayerVehicleID(playerid), -x, y, z, 0.0, 0.0, 0.0); return 1; } return 0; } public OnPlayerStateChange(playerid, newstate, oldstate) { if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_ONFOOT){ if(ctrails[playerid][0]){ DestroyObject(ctrails[playerid][0]); DestroyObject(ctrails[playerid][1]); ctrails[playerid][0] = 0; } } if(oldstate == PLAYER_STATE_DRIVER && newstate == PLAYER_STATE_WASTED){ if(ctrails[playerid][0]){ DestroyObject(ctrails[playerid][0]); DestroyObject(ctrails[playerid][1]); ctrails[playerid][0] = 0; } } return 1; } public OnPlayerConnect(playerid) ctrails[playerid][0] = 0; public OnPlayerDisconnect(playerid, reason) { if(ctrails[playerid][0]){ DestroyObject(ctrails[playerid][0]); DestroyObject(ctrails[playerid][1]); ctrails[playerid][0] = 0; } }