GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Leírások/Útmutatók => A témát indította: ALIEN - 2010. Március 07. - 11:14:06

Cím: [TUT]Menü készítés
Írta: ALIEN - 2010. Március 07. - 11:14:06
Menü készítés
 
Üdv, most egy egyszeru menüt fogunk készíteni ez most egy tele menü lesz,
de lehet akármi kocsi spawnolo fegyver lehívó de ez a menüpontok tartalmától függ.
Na lássunk is hozzá...
1. Elsonek változót hozunk létre a módunk & scriptünk elejére.
 
new Menu:tele;

 
Magyarázat:
new: változó
Menu: ezzel tudjuk hogy menüt készítünk
tele: változónk neve (ezt át lehet írni)
2.Aztán a menüpontokat hozzuk létre...Ezt az OnGameModeInit alá írd:
 

   tele = CreateMenu(\"Teleport Men¬\", 2,  55.0, 200.0, 100.0, 80.0);
    AddMenuItem(tele, 0, \"LosSantos\");
    AddMenuItem(tele, 0, \"SanFierro\");
    AddMenuItem(tele, 0, \"LasVenturas\");

 
Magyarázat:
tele: változónk neve
CreateMenu: menü létrehozása
\"Teleport Menu\": ez a menünk címe
2,55.0,200.0,100.0,80.0.: ez a menü mérete, és a helyzete
AddMenuItem(tele, 0, \"LasVenturas\"); : ez a menüpont, ami \" \" között van az leszs a menü pont neve.
3. Most pedig a menüpontok tulajdonságait fogjuk beállítani...
A public OnPlayerSelectedMenuRow(playerid, row) alá írjuk. Ha nincs akkor hozzunk létre egyet.
 

new Menu:current;
    current = GetPlayerMenu(playerid);
    if(current == tele)
    {
      switch(row)
        {
        case 0:SetPlayerPos(playerid, x, y, z);
        }
        switch(row)
        {
        case 1:SetPlayerPos(playerid, x, y, z);
        }
        switch(row)
        {
        case 2:SetPlayerPos(playerid, x, y, z);
        }
    }

 
Magyarázat:
 
switch(row)
        {
        case 0:SetPlayerPos(playerid, x, y, z); // ez a menüpot tartalma, ez fog történni ha kiválasztjuk
        }

 
4. Most egy parancsot hozunk létre amivel elojön az adott játékosnak a menü.
Az OnPlayerCommandsText alá:
 

if (strcmp(\"/tele\", cmdtext, true, 4) == 0)
    {
    ShowMenuForPlayer(tele, playerid);
     return 1;
}

 
Magyarázat:
ShowMenuForPlayer: megjeleníti a menüt ha beírjuk a parancsot.
 
REMÉLEM SEGÍTETT VALAKINEK. Kezdo vok úgy hogy ne számítsatok tolem jobbat ;D
 És mostmár jöhetnek a kritikák.
Itt egy minta az egészrol:
 


new Menu:tele;
public OnGameModeInit()
{
    tele = CreateMenu(\"Teleport Men¬\", 2,  55.0, 200.0, 100.0, 80.0);
    AddMenuItem(tele, 0, \"LosSantos\");
    AddMenuItem(tele, 0, \"SanFierro\");
    AddMenuItem(tele, 0, \"LasVenturas\");
    return 1;
}
public OnPlayerSelectedMenuRow(playerid, row)
{
 
new Menu:current;
    current = GetPlayerMenu(playerid);
    if(current == tele)
    {
      switch(row)
        {
        case 0:SetPlayerPos(playerid, x, y, z);
        }
        switch(row)
        {
        case 1:SetPlayerPos(playerid, x, y, z);
        }
        switch(row)
        {
        case 2:SetPlayerPos(playerid, x, y, z);
        }
    }
    return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp(\"/tele\", cmdtext, true, 4) == 0)
    {
    ShowMenuForPlayer(tele, playerid);
     return 1;
}
    return 0;
}
Cím: [TUT]Menü készítés
Írta: Depi - 2010. Március 07. - 11:24:05
GameStar-é jobban elvolt magyarázva...de ez is jó,grat hozzá.
Hiba :
 
2,55.0,200.0,100.0,80.0.: ez a menü mérete

 
Ez nem csak a mérete,valamit rosszul tudsz.
Hanem az elhelyezkedése a képernyon,és ugye kezdok azt se tudják hogy lehet az meg álapítanni.
Elmondom: Paintba belépsz,létre hozzol egy 600*400 képet,és ahova akarod a menüt oda húzzod a egeret,és a jobb alsó sarokba lesz két kórdináta,na az lesz a elhelyezkedés.
Cím: [TUT]Menü készítés
Írta: dnsdj - 2010. Március 07. - 11:21:15
Szia szép kis tut de ez
 
2,55.0,200.0,100.0,80.0.:

 
nem a méret hanem az elhelyezkedés is..
és a
 
new:

 
Nem azt jelenti hogy változó hanem hogy létrehozás :D
Cím: [TUT]Menü készítés
Írta: Depi - 2010. Március 07. - 11:31:36
Jah és ezzekel a fügvényekkel kiegészithetted volna :
 

Ha tudod meik mire jó akkor írd le,hanem akkor majd itt a témába szólj és leírom...
Cím: [TUT]Menü készítés
Írta: ALIEN - 2010. Március 07. - 11:39:44
kösz, javítva
Cím: [TUT]Menü készítés
Írta: Csabesz - 2010. Március 07. - 14:09:35
Jó leírás lett.  :)
De ha már a menüknél tartunk, akkor kilehetett volna egészíteni a menükhöz tartozó függvényekkel.   ;)
E: Szerintem már nem sokan használnak menüt, a Dialog a \"meno\".  ::)
Cím: [TUT]Menü készítés
Írta: Depi - 2010. Március 07. - 14:12:42
Csabesz párat feljebb leírtam én is :)
Cím: [TUT]Menü készítés
Írta: ALIEN - 2010. Március 07. - 18:03:26
Ez is megteszi ;D
Cím: [TUT]Menü készítés
Írta: DaNeEe9 - 2010. Március 08. - 19:00:29
nem rossz  :)
Cím: [TUT]Menü készítés
Írta: AtiStar - 2010. Március 08. - 19:47:49
Fatya xD  ;D ;D
Ati
Cím: [TUT]Menü készítés
Írta: ALIEN - 2010. Március 08. - 22:00:27
Idézetet írta: Csabesz date=1267967375\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"893\" data-ipsquote-contentclass=\"forums_Topic
E: Szerintem már nem sokan használnak menüt, a Dialog a \"meno\".  ::)
 
Bejelentem ha megtanulok dialogus menüt csin. akkor csinálok tutot a fórumra, más ne fáradjon :D
Cím: [TUT]Menü készítés
Írta: dnsdj - 2010. Március 08. - 22:57:37
Dialog tut már 2 is van :)
Cím: [TUT]Menü készítés
Írta: GroX - 2010. Március 09. - 15:59:45
new: változó[/quote]
Ez mióta váltózó?
Cím: [TUT]Menü készítés
Írta: Csabesz - 2010. Március 09. - 16:52:42
Idézetet írta: GroX date=1268146785\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"893\" data-ipsquote-contentclass=\"forums_Topic

new: változó
Ez mióta váltózó?
 
[/quote]
:o észre sem vettem. XD
Tessék, http://samp-forum.extra.hu/index.php?topic=3006.0 olvasgass.  ;)
Cím: [TUT]Menü készítés
Írta: ALIEN - 2010. Március 09. - 17:52:10
Idézetet írta: Csabesz date=1268149962\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"893\" data-ipsquote-contentclass=\"forums_Topic


 
new: változó
Ez mióta váltózó?
 
[/quote]
:o észre sem vettem. XD
Tessék, http://samp-forum.extra.hu/index.php?topic=3006.0 olvasgass.  ;)
 
[/quote]
Ja ez így még sz*r... Javítsatok már ki :P :D.
Írjátok le a hibáimat és mondjátok meg mit javítsak>mire. :D
Kössz
Cím: [TUT]Menü készítés
Írta: Csabesz - 2010. Március 09. - 18:59:29
a \'new\' újat lent. Tehát;   új valami;
Pl:
new money;
money = GetPlayerMoney( playerid );
Így a money = a játékos pénzével.
new <- valami új létrehozása.
 ;)
Cím: [TUT]Menü készítés
Írta: ALIEN - 2010. Március 09. - 20:06:20
Idézetet írta: Csabesz date=1268157569\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"893\" data-ipsquote-contentclass=\"forums_Topic
a \'new\' újat lent. Tehát;   új valami;
Pl:
new money;
money = GetPlayerMoney( playerid );
Így a money = a játékos pénzével.
new <- valami új létrehozása.
 ;)
 
akkor...
\"elsonek létre hozunk egy újat\"?XD
jólvan értem :)
Cím: [TUT]Menü készítés
Írta: ChuckNorris - 2010. Március 09. - 20:12:42
Én ugytudom hogy a \"new\" az egy operátor.
És amit létrehozunk az operandus.
Tehát ebben az esetben:
new Film;
new = Operátor,
Film = Operandus.
Mint pl.: a feltételes utasításban.