Sziasztok!
Egy elég egyszerû, de kompakt filterszkript!
Lehet már készítettek hasonlót, de azért feltöltöm a sajátomat
Lényege: Játékon belül Y betût nyomtok, akkor lehív egy tetszõleges jármûvet, amit a szkriptem beállítotok, és bele is rak titeket. 10 MP-nként tudtok lehívni, amit egy Text Draw is jelez.
ScreaM verziója:
http://www.solidfiles.com/d/303eb4d556/Képek:
http://kepfeltoltes.hu/130318/sa-mp-687_www.kepfeltoltes.hu_.png[/img]
http://kepfeltoltes.hu/130318/sa-mp-688_www.kepfeltoltes.hu_.png[/img]
Beállítás-t találtok a modban. Használjátok egészséggel!
// Készítette: Peti, 2013... Beállítások lejjebb!!!
// verzió: 1.0.0
#include <a_samp>
#define FILTERSCRIPT
#pragma tabsize 0
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
BetoltesYcucc(); //
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
}
#endif
//========================[bEÁLLÍTÁSOK]==============================
#define YBILL KEY_YES // Ezzel állíthatod át, hogy melyik gombra jöjjön elõ!! A \"KEY_YES\"-t kell változtatni!!!
#define model 522 // Ez a jármû model amit lehívsz. 522 = NRG-500
#define szin1 8 // 1-es szín
#define szin2 2 // 2-es szín
//========================[bEÁLLÍTÁSOK]==============================
////////////////////////////////////////////
////////////////////////////////////////////
//// Innenstõl kezdõ DIKK ////////////
////////////////////////////////////////////
////////////////////////////////////////////
new bool:Ynyomhat[MAX_PLAYERS] = false;
new Text:Ymehetnem, Text:Ymehetyes;
#define TD_COLOR_RED 0xFF0000AA
#define TD_COLOR_GREEN 0x33AA33AA
#define NYOMOTTGOMB(%0) \\
(((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
forward Ycucceltuntet(playerid);
forward YnyomhatEX(playerid);
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(NYOMOTTGOMB(YBILL))
{
if(Ynyomhat[playerid] == true) return 0; // itt hívja le a jármûvet, és dobja a playert rá, stb, stb....
{
new Float:x, Float:y, Float:z, Float:a, vid;
GetPlayerPos(playerid, x,y,z);
GetPlayerFacingAngle(playerid, a);
CreateVehicle(model, x,y,z,a,szin1,szin2, -1);
vid = GetClosestVehicle(playerid);
PutPlayerInVehicle(playerid, vid, 0);
TextDrawShowForPlayer(playerid, Ymehetnem);
Ynyomhat[playerid] = true;
SetTimerEx(\"YnyomhatEX\", 10 * 1000, false, \"i\", playerid);
SetTimerEx(\"Ycucceltuntet\", 12000, false, \"i\", playerid);
}
}
return 0;
}
stock BetoltesYcucc()
{
Ymehetnem = TextDrawCreate(440,240,\"Jarmu lehivas inaktiv!\");
TextDrawFont(Ymehetnem,1);
TextDrawLetterSize(Ymehetnem,0.5,1.76);
TextDrawBackgroundColor(Ymehetnem, TD_COLOR_RED);
TextDrawColor(Ymehetnem,0xffffffff);
TextDrawUseBox(Ymehetnem, 1);
TextDrawBoxColor(Ymehetnem, 0x05050566);
Ymehetyes = TextDrawCreate(440,240,\"Jarmu lehivas aktiv!\");
TextDrawFont(Ymehetyes,1);
TextDrawBackgroundColor(Ymehetyes, TD_COLOR_GREEN);
TextDrawLetterSize(Ymehetyes,0.5,1.76);
TextDrawColor(Ymehetyes,0xffffffff);
TextDrawUseBox(Ymehetyes, 1);
TextDrawBoxColor(Ymehetyes, 0x05050566);
}
public YnyomhatEX(playerid)
{
TextDrawHideForPlayer(playerid, Ymehetnem);
TextDrawShowForPlayer(playerid, Ymehetyes);
}
public Ycucceltuntet(playerid)
{
TextDrawHideForPlayer(playerid, Ymehetyes);
Ynyomhat[playerid] = false;
}
stock GetClosestVehicle( playerid ) // DEXI készítette
{
new Float:Elmentett = 5;
new ElmentettID;
for( new vehicleid = 0; vehicleid < 20; vehicleid++ )
{
new Float:Jelenlegi;
GetDistance( playerid, vehicleid, Jelenlegi );
if( vehicleid != INVALID_VEHICLE_ID )
{
if( Jelenlegi < Elmentett )
{
Elmentett = Jelenlegi;
ElmentettID = vehicleid;
}
}
}
return ElmentettID;
}
stock GetDistance( playerid, vehicleid, &Float:number )
{
new Float:posx, Float:posy, Float:posz;
new Float:odposx, Float:odposy, Float:odposz;
new Float:tmpx, Float:tmpy, Float:tmpz;
GetPlayerPos(playerid, odposx, odposy, odposz);
if( vehicleid != INVALID_VEHICLE_ID )
{
GetVehiclePos(vehicleid, posx, posy, posz);
tmpx = (odposx -posx);
tmpy = (odposy -posy);
tmpz = (odposz -posz);
new Float:end = floatsqroot( ((tmpx * tmpx) + (tmpy * tmpy)) + (tmpz * tmpz));
number = end;
}
}
// VÉGa