Üzenetek megjelenítése

Ez a szekció lehetővé teszi a felhasználó által írt összes hozzászólás megtekintését. Vedd figyelembe, hogy csak azokba a fórumokba írt hozzászólásokat látod, amelyekhez hozzáférésed van.


Témák - sanyo

Oldalak: [1]
1
Idézetet írta: Alpha date=1282726509\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5536\" data-ipsquote-contentclass=\"forums_Topic

Egyszerû Üzemanyag Filterscript készítése
 
Mindenek elõtt, Deklarációk
Szükségünk lesz Alapvetõ Declarációkra amiben eltároljuk az üzemanyag értékeit.
 

#include <a_samp>
#undef MAX_VEHICLES
#define MAX_VEHICLES 30 // ide írd, mennyi jármû van a szerveren
// max játékos
#undef MAX_PLAYERS
#define MAX_PLAYERS 30 // ide írd mennyi a slot limit!
new fuel[MAX_VEHICLES]; //Üzemanyag jármûvenként
forward timer_fuel_lower(); //Idõzítõ az üzemanyag csökkenéshez
forward timer_refuel(playerid); //Idõzítõ a jármû tankoláshoz
new isrefuelling[MAX_PLAYERS] = 0; //Bool annak ellenörzéséhez ha már a játékos tankol
new Text:td_fuel[MAX_PLAYERS]; //Üzemanyag TextDraw

 
Szabványos üzemanyag érték beálítása
(Itt volt valami blabla amit nem tudtam lefordítani de az biztos lényegtelen)
 

public OnFilterScriptInit()//Amikor a FilterScript betöltõdik
{
    for(new i=0;i<MAX_VEHICLES;i++) {
        fuel = 100; //Alapértéknek minden jármû 100-as üzemanyag értéket kap, ami a maximum
    }
    SetTimer(\"timer_fuel_lower\",4200,true); //Idõzítõ az üzemanyag csökkenéshez
    return 1;
}

 
Elkészítjük a TextDrawot amikor a játékos spawnol
Beálítjuk a textdraw pozícióját és effektusait.
 

public OnPlayerSpawn(playerid)
{
    td_fuel[playerid] = TextDrawCreate(45,324,\"Fuel: 100\"); //Csinál 1 TextDrawot a 45,324 pozícióba
    TextDrawBackgroundColor(td_fuel[playerid],0x00000033); //Csinálunk neki egy szép hátteret
    TextDrawFont(td_fuel[playerid],3); //TextDraw Front beálítása
    TextDrawLetterSize(td_fuel[playerid],0.699999,1.700000); //Méret
    TextDrawColor(td_fuel[playerid],0x000000ff); //Szín
    TextDrawSetShadow(td_fuel[playerid],3); //Árnyék =)
    return 1;
}

 
Megmutatjuk/Elrejtjük az üzemanyag szintet ha a játékos beszáll a jármûbe vagy elhagyja
Elrejtjük a TextDrawot ha a játékos NINCS a kocsiban
 

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if (newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
        new vid = GetPlayerVehicleID(playerid);
        new string[125];format(string,sizeof string,\"Fuel:%i\",fuel[vid]); //Gyorsan csinálunk 1 kicsi frissítést az üzemanyag szinten
        TextDrawSetString(td_fuel[playerid],string);
        TextDrawShowForPlayer(playerid,td_fuel[playerid]); //Megmutatja az üzemanyag szintet ha a játékos kocsiban van
    } else {
        TextDrawHideForPlayer(playerid,td_fuel[playerid]); //Elrejtjük a TextDrawot ha a játékos nincs a kocsiban
    return 1;
}

 
Most megcsináljuk a Tankolás parancsot
 

public OnPlayerCommandText(playerid,cmdtext[]) {
    if (!strcmp(\"/refuel\",cmdtext,true,7)) {
        if (!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,0xFFC800FF,\"You are not in an vehicle!\"); //Ha a játékos nincs jármûben MEGÁLÍTJUK a parancsot
        if (isrefuelling[playerid]) return SendClientMessage(playerid,0xFFC800FF,\"You are already refuelling!\"); //Ha már a játékos tankol akkor MEGÁLÍTJUK a parancsot
        if (GetPlayerMoney(playerid) - 80 <0) return SendClientMessage(playerid,0xFFC800FF,\"You dont have enough money!\"); //Ha a játékosnak NINCS elég pénze akkor visszalökjük!
        GivePlayerMoney(playerid,-80); //De ha van akkor leveszünk -80$-t
        SetCameraBehindPlayer(playerid); //A játékos mögé rakjuk a kamerát mert õ így jobban lát mikor megvan fagyasztva
        TogglePlayerControllable(playerid,0); //Megfagyasztjuk a játékost
        isrefuelling[playerid] = 1; //Beálítjuk a refuel értéket 1 re hogy ne tudjon SPAMOLNI
        TextDrawSetString(td_fuel[playerid],\"Refuelling...\"); //Kicseréli a TextDrawot
        SetTimerEx(\"timer_refuel\",4500,false,\"i\",playerid); //És beálítjuk az ujratöltési idõt
        return 1;
    }
    return 0;
}

 
REMEK! Elérkeztél az utolsó lépéshez aminél az idõzítõket(timer) beálítjuk
 

public timer_fuel_lower()
{
    for(new i=0;i<MAX_PLAYERS;i++) { //Ciklus minden játékosnak
        if (isrefuelling) continue; //Megálítjuk ha a játékos tankol
        new vid = GetPlayerVehicleID(i); //Lekérjük a Kocsi ID-jét
        if (GetPlayerVehicleSeat(i) == 0) { //Ha a játékos a vezetõ
            fuel[vid] = fuel[vid] -1; //Csökkenés mértéke
            if (fuel[vid]<1) //Ha elfogyott a benzin
            {
                fuel[vid] = 0; //Beálítjuk az üzemanyag szintet 0 ra Mert ha nem álítjuk be akkor az idõzítõ lehúzza -1 -2 -3 stb. re mielött kivehetnénk a kocsiból!
                RemovePlayerFromVehicle(i); //Kiszedjük a játékost a jármûvébõl!
                GameTextForPlayer(i,\"~r~You are out of ~w~fuel~r~!\",5000,4); //Szöveg megmutatása
            }
        }
        new string[125];format(string,sizeof string,\"Fuel:%i\",fuel[vid]); //String elõkészítése a következõ üzemanyag értékhez
        TextDrawSetString(td_fuel,string); //textDraw frissítése
    }
    return 1;
}
public timer_refuel(playerid) //Amikor tankol
{
    new vid = GetPlayerVehicleID(playerid);
    fuel[vid] = fuel[vid] = 100; //Beálítjuk az üzemanyagát 100 ra
    isrefuelling[playerid] = 0;//Eltüntetjük az AntiSpam cuccost
    TextDrawSetString(td_fuel[playerid],\"Fuel:100\"); //TextDraw frissítése
    TogglePlayerControllable(playerid,1); //És levesszük a fagyasztást a játékosról
}

 
EREDETI LEÍRÁS: http://forum.sa-mp.com/showthread.php?t=169284

EREDETI SZERZÕ: gamer931215


LEFORDÍTOTTA: ALPHA

Ha valami hibát találsz kérlek jelezd!(Helyenként nem 100% osan ugyan az van leírva mert úgy kicsit értelmetlen dolog jött volna ki!)
 
egybe leirnátok nekem vagy beraknátok scriotbe?

2
Fórum Archívum (Témák/Fórumok) / Re:Segítsetek lécci!
« Dátum: 2011. Január 22. - 20:59:47 »
Idézetet írta: sanyo date=1295726371\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"5533\" data-ipsquote-contentclass=\"forums_Topic
csinltam egy ilyen tuning auto lerakot vagy mit!! igy néz ki de error van!! segitsetek
 
#include <a_samp>
public OnVehicleSpawn(vehicleid)
{
if(vehicleid == blacksultan)
{
    AddVehicleComponent(562,-2693.1592,222.8470,3.9116,92.6099,1,1,1010);
   AddVehicleComponent(562,-2689.1553,204.9687,3.9950,2.0890,1,1,1028);
return 1;
}
return 1;
}

3
Szkript kérések / Segítsetek lécci!
« Dátum: 2011. Január 22. - 20:59:31 »
csinltam egy ilyen tuning auto lerakot vagy mit!! igy néz ki de error van!! segitsetek
 
#include <a_samp>
public OnVehicleSpawn(vehicleid)
{
if(vehicleid == blacksultan)
{
    AddVehicleComponent(562,-2693.1592,222.8470,3.9116,92.6099,1,1,1010);
   AddVehicleComponent(562,-2689.1553,204.9687,3.9950,2.0890,1,1,1028);
return 1;
}
return 1;
}

4
Fórum Archívum (Témák/Fórumok) / Re:szkriptz
« Dátum: 2011. Január 22. - 18:41:07 »
és magyarországon élek: szabolcs-szatmár-bereg megyében. kemecsén

5
Fórum Archívum (Témák/Fórumok) / Re:Ház vevés!
« Dátum: 2011. Január 22. - 09:36:56 »
http://forum.sa-mp.com/showthread.php?t=118379 itt talaltam valamit de nem tudom letölteni:S
nagyom béna vagyok!még kezdõ

6
Segítségkérés / Ház vevés!
« Dátum: 2011. Január 22. - 08:19:17 »
Szisztok. valaki készítene egy ojan szkriptett amivel lehet hazakat veni? nagyon fontos lenne!! elõre is köszike

7
Szkript kérések / szkriptz
« Dátum: 2011. Január 20. - 20:50:14 »
valaki tudna nekem készíteni egy teleportott és egy ojan szkript ugratokat!lecci

Oldalak: [1]
SimplePortal 2.3.7 © 2008-2024, SimplePortal