Szerző Téma: Kezdõ scripter  (Megtekintve 1433 alkalommal)

Kezdõ scripter
« Dátum: 2012. november 25. - 09:44:56 »
0 Show voters
Nos szisztok elõszõr is :)

Lenne egy pár kérdésem amire nem találtam a forumon a választ(lehet hogy fent van de nem találtam).


1.Hogy kell egy x,y épülethez interiort adni.Pl.LSPD-hez egy interiort vagy egy házhoz.


2.A teszt szerveremen egy LVDM mod fut..Szeretnék kérni egy olyan scriptet ami pl. El Coronába spawnol mindig amikor beloginolok.


3.Szeretném azt , hogy pl. El Coronába legyen egy hely ahol beírom , hogy /felszereles1 és adjon fegyvert ezt sikerült megcsinálnom könnyen de azt nem , hogy CSAK El coronába tudjam egy x,y helyen felvenni..:/


Elõre is köszönöm a válaszokat!


Üdv:EGy elég kezdõ scripter!  :D

Kezdõ scripter
« Válasz #1 Dátum: 2012. november 25. - 11:44:55 »
0 Show voters

#include <a_samp>
#include <zcmd> //ha zcmd-t akarasz használni akkor be kell ágyaznod elõbb ((megjegyzem: ez gyorsabb parancs és egyszerûbb is!))
#define ZOLD 0x33AA33AA //definiálsz egy színt amit késõbb felhasználsz majd
#define PIROS 0xFF0000FF //szintén
CMD:felszereles(playerid,params[]) //ha a játékos beírja a felszereles parancsot akkor mi tröténjen
{
if(!IsPlayerInRangeOfPoint(playerid,sugár,X,Y,Z)) return SendClientMessage(playerid,PIROS,\"Nem vagy a megfelelõ helyen\"); //Ha a játákos nincs a megfelelõ helyen.
if(IsPlayerInRangeOfPoint(playerid,sugár,X,Y,Z)) //Ha egy játékos az adott sugárban van az adot koordinátákban(ezeket neked kell beírnod) akkor mitörténjen.
{
SendClientMessage(playerid,ZOLD,\"Sikeresen felvetted a felszerelésed\"); //küldünk egy üzenetet a játékosnak, hogy mi is történt
GivePlayerWeapon(playerid, 22, 300); //ezzel adunk a játékosnak egy Coltot 300db lõszerrel
return 1;
}
return 1;
}

 
Parancsolj ez a fegyver lekérõ az adott helyen, 2. kérdésed attõl függ, hogy akarsz-e karakter választót a játék elejére.?

Kezdõ scripter
« Válasz #2 Dátum: 2012. november 25. - 11:54:03 »
0 Show voters
Felesleges 2szer használni az IsPlayerInRangeOfPoint függvényt, valamint a params[] sem kell oda, hiszen nem használunk paramétert a parancsnál.


 

CMD:felszereles(playerid)
{
    if(!IsPlayerInRangeOfPoint(playerid, sugár, x,y,z)) return SendClientMessage(playerid, -1, \"Nem vagy a megfelelõ helyen!\");
    // Ide jönnek azok a dolgok amik akkor történnek ha a megadott helyen vagy
    return 1;
}

 
UI.: 1 kérdésed: Létrehozol egy /enter parancsot, ami csak az épület elött mûködik(Isplayerinrangeofpoint fgv.), ha ott vagy az épület elött akkor megváltoztatod az interiort és a pozíciót (SetPlayerInterior és SetPlayerPos), a kimenésnél ugyan ez csak ott a 2 pozíciót kell felcserélni, és 0-s interiorra váltani.
« Utoljára szerkesztve: 2012. november 25. - 11:56:22 írta Johnies00 »

Kezdõ scripter
« Válasz #3 Dátum: 2012. november 25. - 16:10:59 »
0 Show voters
ohh srácok nagyon szépen köszönöm sokat segítettetek közbe tanulgattam és spawnt megoldottam meg nagyon hasznos volt amit leírtál köszönöm mostmár csak az interiorokat szeretném megtudni! :)

Nem elérhető skyLine

  • Globális moderátor
  • 2171
  • 2020
  • Vaterán
    • Profil megtekintése
Kezdõ scripter
« Válasz #4 Dátum: 2012. november 25. - 18:30:31 »
0 Show voters
Szia

LSPD elõtt lemented azt a koordinációt ahol legyen a bejárat és ahova rakja amikor kijön. Valami program, script segítségével LSPD Interiorjába mész ott is lemented ezt a 2 koordinátát és beírod \"
/interior\" , arra az interiorra rakod a játékos bemeneti pozícióját.

Kezdõ scripter
« Válasz #5 Dátum: 2012. november 26. - 06:19:25 »
0 Show voters
Idézetet írta: SkyLinE date=1353864631\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"30217\" data-ipsquote-contentclass=\"forums_Topic
Szia

LSPD elõtt lemented azt a koordinációt ahol legyen a bejárat és ahova rakja amikor kijön. Valami program, script segítségével LSPD Interiorjába mész ott is lemented ezt a 2 koordinátát és beírod \"
/interior\" , arra az interiorra rakod a játékos bemeneti pozícióját.
 
Egyszerûbb: http://weedarr.wikidot.com/interior

Kezdõ scripter
« Válasz #6 Dátum: 2012. november 29. - 20:12:19 »
0 Show voters
és azt , hogy lehet megoldani , hogy ppl./enter parancsal az xy számú interiorba rakjon be? :D

Nem elérhető Iceaac

  • 2187
    • Profil megtekintése
Kezdõ scripter
« Válasz #7 Dátum: 2012. november 29. - 20:23:45 »
0 Show voters
Idézetet írta: metaxizje date=1354216339\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"30217\" data-ipsquote-contentclass=\"forums_Topic
és azt , hogy lehet megoldani , hogy ppl./enter parancsal az xy számú interiorba rakjon be? :D
 
http://wiki.sa-mp.com/wiki/Function:SetPlayerInterior
http://wiki.sa-mp.com/wiki/SetPlayerPos

Kezdõ scripter
« Válasz #8 Dátum: 2012. november 30. - 13:08:12 »
0 Show voters
húha :D
lennétek olyan kedvesek mert eddig le a kalappal télleg jó fejek voltatok nagyon köszönöm de 1 hete scriptelek és hát..nem nagyon értem még a fügvényeket..
szval az lenne , hogy pl. LSPD-hez legyen egy /enter parancs és legyen egy x,y interior id..és még azt , hogy ezt több helyen is megtudjam csinálni ne csak LSPD-nél ha nem LSMD-nél is :D
elõre is köszönöm az eddigi válaszokat sokat segítettetek :)

Kezdõ scripter
« Válasz #9 Dátum: 2012. november 30. - 14:00:58 »
0 Show voters
CMD:enter(playerid) // Parancs amire mûködik
{
if(IsPlayerInRangeOfPoint(playerid, 3, 1552.6385,-1675.8003,16.1953)) // Leellenörzi hogy az adott pozíció vagy a pozíció sugarában vagy-e
{ // Ha igen
        SetPlayerPos(playerid, 246.783996,63.900199,1003.640625); // Elteleportál arra a pozícióra ahol az interior található
        SetPlayerInterior(playerid, 6); // Bedob az adott interiorba (csak ebben az interior-ban találhatóak \'az objectek\')
        SendClientMessage(playerid, -1, \"Bementél az LSPD interiorjába.\"); // Üzenet
}
else if(IsPlayerInRangeOfPoint(playerid, 3, 1173.6118,-1323.2228,15.1953)) // vagy ha ezen a pozíción, vagy a sugarában vagy
{ // Ha az elõzõ feltétel igaz
    SetPlayerPos(playerid, 322.197998,302.497985,999.148437); // teleportál
    SetPlayerInterior(playerid, 5); // Interior ID-t vált
    SendClientMessage(playerid, -1, \"Bementél az LSMD interiorjába.\"); // Üzenet
}
// A következõ 3 sor nem kötelezõ
else // Ha egyik se igaz
{
    SendClientMessage(playerid, -1, \"LSMD nél, vagy LSPD nél kell lenned.\"); // üzenet
}
return 1;
}

Kezdõ scripter
« Válasz #10 Dátum: 2012. november 30. - 14:51:06 »
0 Show voters
ohhh :D
nagyon szépen köszönöm a segítségeket így már írom tovább a dolgokat :D
majd adom a +-t :D zárható !  :D 

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal