All pastes #412716 Raw Edit

Unnamed

public cpp v1 · immutable
#412716 ·published 2007-03-27 22:09 UTC
rendered paste body
#include <a_samp>#include <xgas>new Filling[MAX_PLAYERS];new Float:Station[16][3] = {	{2109.2126,917.5845,10.8203},	{2640.1831,1103.9224,10.8203},	{611.8934,1694.7921,6.7193},	{-1327.5398,2682.9771,49.7896},	{-2413.7427,975.9317,45.0031},	{-1672.3597,414.2950,6.8866},	{-2244.1365,-2560.6294,31.6276},	{-1603.0166,-2709.3589,48.2419},	{1939.3275,-1767.6813,13.2787},	{-94.7651,-1174.8079,1.9979},	{1381.6699,462.6467,19.8540},	{657.8167,-559.6507,16.0630},	{-1478.2916,1862.8318,32.3617},	{2147.3054,2744.9377,10.5263},	{2204.9602,2480.3494,10.5278},	{1590.9493,2202.2637,10.5247}};main(){	print("\n----------------------------------");	print("  xGas_Example Script by Pixels^");	print("----------------------------------\n");}public OnGameModeInit(){	SetGameModeText("xGas_Example");	xGas_SetAllEngineOil(100);	SetTimer("Fuel",1000,1);	SetTimer("Check",2000,1);	SetTimer("VTick",1000,1);	AddPlayerClass(250, -2345.5618, -166.8193, 35.6547, 269.1425, 0, 0, 0, 0, 0, 0);	AddFueledVehicle(415,-2342.1238,-126.2422,35.0558,4.6324,24,118);    AddFueledVehicle(542,-2348.2932,-126.3289,35.0557,358.1899,24,118);	for(new v=0; v<GetMaxVehicles(); v++) {	    switch(GetVehicleType(v)) {	    	case VTYPE_CAR: xGas_SetGas(v,50);			case VTYPE_BIKE: xGas_SetGas(v,33);			case VTYPE_SEA: xGas_SetGas(v,28);			case VTYPE_AIR: xGas_SetGas(v,80);			case VTYPE_HEAVY: xGas_SetGas(v,20);	    }	}	return 1;}public OnPlayerRequestClass(playerid, classid){	SetPlayerPos(playerid, 1954.3783, 1343.1572, 15.3746);	SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);	SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);	return 1;}public OnGameModeExit(){	return 1;}public OnPlayerConnect(playerid){	return 1;}public OnPlayerDisconnect(playerid){	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){	return 1;}public OnPlayerCommandText(playerid, cmdtext[]){	new string[76];	new v = GetPlayerVehicleID(playerid);	if(strcmp(cmdtext, "/showgas", true) == 0) {		format(string,sizeof(string),"%d",xGas_ShowGas(v));		SendClientMessage(playerid,0xFFFFFFAA,string);		return 1;	}		if(strcmp(cmdtext, "/refuel", true) == 0) {	    if(!IsPlayerInAnyVehicle(playerid)) {			SendClientMessage(playerid,0xFF0000AA,"Not in any vehicle");			return 1;		}	    if(GetPlayerMoney(playerid) <= 99 && GetPlayerMoney(playerid) >= 1) {			SendClientMessage(playerid,0xFF0000AA,"Not enough money to refuel");			return 1;		}		Filling[playerid] = 1;		GivePlayerMoney(playerid,-100);		SendClientMessage(playerid,0xFFFFFFAA,"Filling vehicle");		return 1;	}		if(strcmp(cmdtext, "/repair", true) == 0) {	    if(!IsPlayerInAnyVehicle(playerid)) {			SendClientMessage(playerid,0xFF0000AA,"Not in any vehicle");			return 1;		}	    if(GetPlayerMoney(playerid) <= 99 && GetPlayerMoney(playerid) >= 1) {			SendClientMessage(playerid,0xFF0000AA,"Not enough money to refuel");			return 1;		}		if(xGas_GetEngineOil(v) >= 85) {			SendClientMessage(playerid,0xFF0000AA,"Your engine oil is in a good state");			return 1;		}		Filling[playerid] = 2;		GivePlayerMoney(playerid,-100);		SendClientMessage(playerid,0xFFFFFFAA,"Repairing vehicle");	    return 1;	}	return 0;}public OnPlayerInfoChange(playerid){	return 1;}public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger){	return 1;}public OnPlayerExitVehicle(playerid, vehicleid){	return 1;}public OnPlayerStateChange(playerid, newstate, oldstate){	if(newstate == PLAYER_STATE_DRIVER) {	    new string[86];	    new vehicle = GetPlayerVehicleID(playerid);	    format(string,sizeof(string),"Vehicle last used %d seconds ago",GetVehicleTick(vehicle));		if(GetVehicleTick(vehicle) <= 100) {		    SendClientMessage(playerid,0xFFFF00AA,"Fresh vehicle!");		}		if(GetVehicleTick(vehicle) >= 300) {		    SendClientMessage(playerid,0xFFFF00AA,"Rusty old vehicle!");		}		SendClientMessage(playerid,0xFFFF00AA,string);	}	return 1;}public OnPlayerEnterCheckpoint(playerid){	return 1;}public OnPlayerLeaveCheckpoint(playerid){	return 1;}public Fuel() {	for(new i=0; i<MAX_PLAYERS; i++) {	    if(GetPlayerState(i) == 2) {	        new v = GetPlayerVehicleID(i);	        new string[76];			if(Filling[i] == 1) {			    if(xGas_GetGas(v) >= 100) {			        SendClientMessage(i,0xFF0000AA,"Vehicle refueled");			        return Filling[i] = 0;			    }			    xGas_Fuel(v);				format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~w~Fuel %d~n~EngineOil %d",xGas_GetGas(v),xGas_GetEngineOil(v));				return GameTextForPlayer(i,string,2000,1);			}			if(Filling[i] == 2) {			    if(xGas_GetEngineOil(v) >= 100) {			        SendClientMessage(i,0xFF0000AA,"Vehicle repaired");			        return Filling[i] = 0;			    }			    if(GetVehicleTick(v) >= 10) {			    	SubVehicleTick(v,10);			    }				if(GetVehicleTick(v) <= 5) {				}			    xGas_EngineOil(v,true,10);				format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~w~Fuel %d~n~EngineOil %d",xGas_GetGas(v),xGas_GetEngineOil(v));				return GameTextForPlayer(i,string,2000,1);			}			if(xGas_GetGas(v) <= 0) {				TogglePlayerControllable(i,0);				return SendClientMessage(i,0xFF0000AA,"You have ran out of fuel");			}			if(xGas_GetEngineOil(v) <= 0) {				TogglePlayerControllable(i,0);				return SendClientMessage(i,0xFF0000AA,"Your engine oil just damaged your engine");			}			for(new ve=0; ve<GetMaxVehicles(); ve++) {	        	xGas_Deplete(ve);	        	xGas_EngineOil(ve,false,1); // usage of engine oil			}			format(string,sizeof(string),"~n~~n~~n~~n~~n~~n~~w~Fuel %d~n~EngineOil %d",xGas_GetGas(v),xGas_GetEngineOil(v));			return GameTextForPlayer(i,string,2000,1);	    }	}	return 1;}public Check() {	for(new i=0; i<MAX_PLAYERS; i++) {	    for(new c=0; c<16; c++) {			if(PlayerToPoint(i,13,Station[c][0],Station[c][1],Station[c][1])) {			    GameTextForPlayer(i,"~w~/refuel for gas~n~~y~/repair for engine oil",1000,1);				return 1;			}		}	}	return 1;}public VTick() {	for(new v=0; v<GetMaxVehicles(); v++) {	    for(new i=0; i<MAX_PLAYERS; i++) {			if(IsPlayerInVehicle(i,v)) {				SetVehicleTick(v,0);			}			else {				AddVehicleTick(v,1);			}		}	}}stock PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z){	new Float:oldposx, Float:oldposy, Float:oldposz;	new Float:tmpposx, Float:tmpposy, Float:tmpposz;	GetPlayerPos(playerid, oldposx, oldposy, oldposz);	tmpposx = (oldposx -x);	tmpposy = (oldposy -y);	tmpposz = (oldposz -z);	if (((tmpposx < radi) && (tmpposx > -radi)) && ((tmpposy < radi) && (tmpposy > -radi)) && ((tmpposz < radi) && (tmpposz > -radi)))	{		return 1;	}	return 0;}