MidnightDrifterZ
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Ops and OpTic[MDZ] Refuel system

3 posters

Go down

Ops and OpTic[MDZ] Refuel system Empty Ops and OpTic[MDZ] Refuel system

Post  Ops Wed Nov 30, 2011 5:33 am

hello, we have been scripting abit, and we made this mirror.
here is the CODE:


#include <a_samp>
new Text:td_fuel[MAX_PLAYERS];
new Text:td_vhealth[MAX_PLAYERS];
new Text:td_vspeed[MAX_PLAYERS];
new Text:td_box[MAX_PLAYERS];

forward timer_update();
forward timer_refuel(playerid);
new isrefuelling[MAX_PLAYERS] = 0;
new fuel[MAX_VEHICLES];
new Float:max_vhealth[MAX_VEHICLES];
new Engine[MAX_PLAYERS];

public OnFilterScriptInit()
{
for(new i=0;i<MAX_VEHICLES;i++) {
GetVehicleHealth(i,max_vhealth[i]); //getting max health
fuel[i] = 2800 + random(1500); //setting fuel for vehicles
}

for(new i=0;i<MAX_PLAYERS;i++) { //setting up all textdraws
td_fuel[i] = TextDrawCreate(476,355,"Fuel:");
td_vhealth[i] = TextDrawCreate(478,376,"Health:");
td_vspeed[i] = TextDrawCreate(478,397,"Speed:");
td_box[i] = TextDrawCreate(478.000000,328.000000,"Vehicle Stats: ~n~~n~~n~~n~");
TextDrawUseBox(td_box[i],1);
TextDrawBoxColor(td_box[i],0x00000066);
TextDrawTextSize(td_box[i],626.000000,21.000000);
TextDrawAlignment(td_fuel[i],0);
TextDrawAlignment(td_vhealth[i],0);
TextDrawAlignment(td_vspeed[i],0);
TextDrawAlignment(td_box[i],0);
TextDrawBackgroundColor(td_fuel[i],0x000000ff);
TextDrawBackgroundColor(td_vhealth[i],0x000000ff);
TextDrawBackgroundColor(td_vspeed[i],0x000000ff);
TextDrawBackgroundColor(td_box[i],0x000000cc);
TextDrawFont(td_fuel[i],1);
TextDrawLetterSize(td_fuel[i],0.699999,2.699999);
TextDrawFont(td_vhealth[i],1);
TextDrawLetterSize(td_vhealth[i],0.699999,2.699999);
TextDrawFont(td_vspeed[i],1);
TextDrawLetterSize(td_vspeed[i],0.699999,2.699999);
TextDrawFont(td_box[i],0);
TextDrawLetterSize(td_box[i],0.699999,2.899999);
TextDrawColor(td_fuel[i],0xffffffff);
TextDrawColor(td_vhealth[i],0xffffffff);
TextDrawColor(td_vspeed[i],0xffffffff);
TextDrawColor(td_box[i],0xffffffff);
TextDrawSetOutline(td_fuel[i],1);
TextDrawSetOutline(td_vhealth[i],1);
TextDrawSetOutline(td_vspeed[i],1);
TextDrawSetOutline(td_box[i],1);
TextDrawSetProportional(td_fuel[i],1);
TextDrawSetProportional(td_vhealth[i],1);
TextDrawSetProportional(td_vspeed[i],1);
TextDrawSetProportional(td_box[i],1);
TextDrawSetShadow(td_fuel[i],1);
TextDrawSetShadow(td_vhealth[i],1);
TextDrawSetShadow(td_vspeed[i],1);
TextDrawSetShadow(td_box[i],10);
}
SetTimer("timer_update",1000,true);
return 1;
}

public OnFilterScriptExit()
{
for(new i=0;i<MAX_PLAYERS;i++) {
TextDrawDestroy(td_fuel[i]);
TextDrawDestroy(td_vhealth[i]);
TextDrawDestroy(td_vspeed[i]);
TextDrawDestroy(td_box[i]);
}
return 1;
}

stock IsPlayerAtRefuelStation(playerid)
{
if (IsPlayerInRangeOfPoint(playerid,10,655.5993,-564.9833,16.3359)) return 1; //Dilimore
if (IsPlayerInRangeOfPoint(playerid,10,4,5,6)) return 1; //random
return 0;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
if (newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
{

TextDrawSetString(td_fuel[playerid],"Fuel:");
TextDrawSetString(td_vhealth[playerid],"Health:");
TextDrawSetString(td_vspeed[playerid],"Speed:");

TextDrawShowForPlayer(playerid,td_fuel[playerid]);
TextDrawShowForPlayer(playerid,td_vspeed[playerid]);
TextDrawShowForPlayer(playerid,td_vhealth[playerid]);
TextDrawShowForPlayer(playerid,td_box[playerid]);
} else {
TextDrawHideForPlayer(playerid,td_fuel[playerid]);
TextDrawHideForPlayer(playerid,td_vspeed[playerid]);
TextDrawHideForPlayer(playerid,td_vhealth[playerid]);
TextDrawHideForPlayer(playerid,td_box[playerid]);
}
return 1;
}


public OnPlayerCommandText(playerid,cmdtext[]) {

if (!strcmp("/refuel",cmdtext,true,7)) {
if (!IsPlayerAtRefuelStation(playerid)) return SendClientMessage(playerid,0xFFC800FF,"You're not at an fuel station!");
if (!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xFFC800FF,"You are not in an vehicle!"); //if a player isnt in a vehicle, it stops here
if (isrefuelling[playerid]) return SendClientMessage(playerid,0xFFC800FF,"You are already refuelling!"); //if a player is already refuelling, it stops here
if (GetPlayerMoney(playerid) - 20 <0) return SendClientMessage(playerid,0xFFC800FF,"You dont have enough money!"); //if a player doesnt have $80 anymore, it stops here
GivePlayerMoney(playerid, -20); //Sets the player's cash -$80
SetCameraBehindPlayer(playerid); //Sets the camera behind the player (looks better because the player will be frozen for a few secs)
isrefuelling[playerid] = 1; //setting isrefuelling to 1 so the player cant spam /refuel
TextDrawSetString(td_fuel[playerid],"Refuelling..."); //changing textdraw to /refuel
SetTimerEx("timer_refuel",4500,false,"i",playerid); //setting refueltimer
return 1;
}
return 0;
}

public timer_update()
{
for(new i=0;i<MAX_PLAYERS;i++) {
if (isrefuelling[i]) return 0;
new vid = GetPlayerVehicleID(i);
if (GetPlayerVehicleSeat(i) == 0) {
fuel[vid] = fuel[vid] - 1;
if (fuel[vid]<1)
{
fuel[vid] = 0;
new veh = GetPlayerVehicleID(i);
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
Engine[i]=0;
GameTextForPlayer(i,"~r~You are out of ~w~fuel~r~!",5000,4);
}
}
new string[128];format(string,sizeof string,"Fuel: %i",fuel[vid] /50);
TextDrawSetString(td_fuel[i],string);

new Float:speed_x,Float:speed_y,Float:speed_z,Float:temp_speed,final_speed,Float:health;

GetVehicleVelocity(vid,speed_x,speed_y,speed_z);
temp_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*136.666667;
final_speed = floatround(temp_speed,floatround_round);
format(string,sizeof string,"Speed: %i",final_speed);
TextDrawSetString(td_vspeed[i],string);

GetVehicleHealth(vid,health);
if (max_vhealth[vid] == 0)//if its an random spawned vehicle
{
fuel[vid] = 1000;
GetVehicleHealth(vid,max_vhealth[vid]);
}
health = (((health - max_vhealth[vid]) /max_vhealth[vid]) *100)+ 100;
format(string,sizeof string,"Health: %i",floatround(health,floatround_round));
TextDrawSetString(td_vhealth[i],string);
}
return 1;
}

public timer_refuel(playerid)
{
new vid = GetPlayerVehicleID(playerid);
if(Engine[playerid]==0)
{
new veh = GetPlayerVehicleID(playerid);
new engine,lights,alarm,doors,bonnet,boot,objective;
GetVehicleParamsEx(veh,engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(veh,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
Engine[playerid]=1;
}
fuel[vid] = fuel[vid] = 300;
isrefuelling[playerid] = 0;
TextDrawSetString(td_fuel[playerid],"Fuel:100");
}


Last edited by Ops on Wed Nov 30, 2011 8:50 pm; edited 4 times in total (Reason for editing : now it should lose 1% fuel after 50 seconds)
Ops
Ops

Posts : 83
Reputation : 5
Join date : 2011-11-28
Age : 30
Location : Norway

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty .

Post  Ops Wed Nov 30, 2011 5:34 am

Hope you like it.

-Ops
Ops
Ops

Posts : 83
Reputation : 5
Join date : 2011-11-28
Age : 30
Location : Norway

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty Add Gasstation! NB

Post  Ops Wed Nov 30, 2011 5:37 am

U have to add this line under line 79 if u wanna add some own gasstations.


if (IsPlayerInRangeOfPoint(playerid,10,x,y,z)) return 1;


-Ops and OpTic[MDZ]


Last edited by Ops on Wed Nov 30, 2011 5:39 am; edited 1 time in total (Reason for editing : We added some wrong IsPlayerInRangeOfPoint lines.)
Ops
Ops

Posts : 83
Reputation : 5
Join date : 2011-11-28
Age : 30
Location : Norway

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty Re: Ops and OpTic[MDZ] Refuel system

Post  Admin Wed Nov 30, 2011 5:11 pm

Nice That Helped Us!
Admin
Admin
Admin

Posts : 58
Reputation : 16
Join date : 2011-11-13
Age : 27
Location : Pakistan

https://midnightdrifterz.forumotion.com

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty Re: Ops and OpTic[MDZ] Refuel system

Post  Admin Wed Nov 30, 2011 6:07 pm

But The Fuel Drains Too Fast...
Admin
Admin
Admin

Posts : 58
Reputation : 16
Join date : 2011-11-13
Age : 27
Location : Pakistan

https://midnightdrifterz.forumotion.com

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty Re: Ops and OpTic[MDZ] Refuel system

Post  Ops Thu Dec 01, 2011 1:38 am

then Change the speed.



-Ops
Ops
Ops

Posts : 83
Reputation : 5
Join date : 2011-11-28
Age : 30
Location : Norway

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty reply

Post  mosswine Thu Dec 01, 2011 5:13 pm

OMG the scripting actually hurts my eye O_o..

mosswine

Posts : 4
Reputation : -1
Join date : 2011-11-26

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty Re: Ops and OpTic[MDZ] Refuel system

Post  Ops Fri Dec 02, 2011 2:54 am

mosswine wrote:OMG the scripting actually hurts my eye O_o..
LOL!
Ops
Ops

Posts : 83
Reputation : 5
Join date : 2011-11-28
Age : 30
Location : Norway

Back to top Go down

Ops and OpTic[MDZ] Refuel system Empty Re: Ops and OpTic[MDZ] Refuel system

Post  Sponsored content


Sponsored content


Back to top Go down

Back to top

- Similar topics

 
Permissions in this forum:
You cannot reply to topics in this forum