Jump to content

Cum sa faci un Menu


andybtv

Recommended Posts

Definitie

Menu = Un menu in care intra mai multe coloane,pe care daca le selectezi(cu SPACE) sa ti se intample ceva(Iti creste viata,iti da o arma,0 masina,etc.)

Deci sa incepem cu inceputul:

Sus la Fs sau Gm pui

new Menu:Food;
Termenul Food poate fii diferit in functie de ce nume vrei tu sa ii pui,dar atentie trebuie dupaia sa inlocuiesti tot ce gasesti cu Food cu numele pe care l-ai pus tu. Apoi la
public OnGameModeInit()
Pui:
	Food = CreateMenu("Food Menu", 1, 50.0, 180.0, 200.0, 200.0);

	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Text");
	AddMenuItem(Food, 0, "Exit");
Iarasi,mare atentie deoarece Ultima coloana trebuie sa fie neaparat EXIT,deoarece daca jucatorul nu vrea sa selecteze nimica sa poata iesi din menu. Apoi la
public OnPlayerCommandText(playerid, cmdtext[])
Pui:
    if(strcmp(cmdtext, "/comanda",true) == 0)
    {
        ShowMenuForPlayer(Food,playerid);
        TogglePlayerControllable(playerid, 0);
        SendClientMessage(playerid, 0xD7D700FF, "Text");
        return 1;
    }
Aici daca scrii /comanda iti va aparea meniul.Nu uitati ca daca ati modificat cumva Food sa schimbati tot ce este cu food!! Apoi la
public OnPlayerSelectedMenuRow(playerid, row)
incepi asa: Pentru mancare:
               new Menu:CurrentMenu = GetPlayerMenu(playerid);
               if(CurrentMenu == Food)
               {
		       switch(row)
	           {
            case 0:
			{
				TogglePlayerControllable(playerid,1);
				if (GetPlayerMoney(playerid) >= 12)
				{
				SetPlayerHealth(playerid,100);
				GivePlayerMoney(playerid, -12);
                SendClientMessage(playerid,0x008080FF, " Text daca are bani");}
				else
				{
				ShowMenuForPlayer(Food,playerid);TogglePlayerControllable(playerid, 0);
				SendClientMessage(playerid, 0xFF0000FF, "Text daca nu are bani.");
				return 1;
				}
				}
aici
if (GetPlayerMoney(playerid) >= 12)
se vede daca jucatorul are 12$ daca nu nu poate cumpara daca da,poate. aici
SetPlayerHealth(playerid,100);
I se da jucatoruilui viata 100% Atentie numaratoarea incepe de la
case 0:
Pentru arme:



			case 0:
			{
				TogglePlayerControllable(playerid,1);
				if (GetPlayerMoney(playerid) >= 500)
				{
				GivePlayerWeapon(playerid, 28, 90);
				GivePlayerMoney(playerid, -500);
                SendClientMessage(playerid,COLOR_GREEN, "Text daca are bani");}
				else
				{
				ShowMenuForPlayer(Weapons,playerid);TogglePlayerControllable(playerid, 0);
				SendClientMessage(playerid, COLOR_ULTRARED, "Text daca nu are bani.");
				return 1;
				}
			    }
aici
GivePlayerWeapon(playerid, 28, 90);
ii da jucatorului un UZI cu 90 de gloante deci 28 este id-ul armei si 90 gloantele. Si pentru teleport:

case 0:
		{
			SetPlayerPos(playerid,XX, YY, ZZ);
		}
XX,YY,ZZ
= coordonatele Iar la ultimul case care am zis ca trebuie sa fie neaparat Exit punem:

case 7:
{
HideMenuForPlayer(Food,playerid);
ShowMenuForPlayer(Food,playerid);
TogglePlayerControllable(playerid,0);
}

Link to comment
Share on other sites

tare tare dar mai rpd il faci cu menu convertor cel care la pus farsek la aplicati

Da asa este dar mie mi se pare mult mai simplu asa.

Bravo!Mie mi se pare foarte util!!!!

Ai explicat foarte bine!!!Acum stiu si eu sa fac un meniu in sfarsit(ce mai cautam informatii).

Felicitari inca o data!

Multumesc! 8) 8)

Link to comment
Share on other sites

  • 3 weeks later...

/save in game

PS: Bun tutorialu si folositor :) GJ

-Una e pozitia de pe harta si alta e pozitia de pe monitorhaha.gif

-Poti folosi programul Asta si iei numerele..adic pozitia

ex:

TextDrawCreate(296,302,...

si apoi pui la meniu

CreateMeniu(title[], columns, Float:x, Float:y, Float:col1width, Float:col2width)


#Alxxie:

pai e la fel cu case,daca NextPage e ultima din meniu, pui la ultima 'case' ShowMenuForPlayer(menuid,playerid);

Link to comment
Share on other sites

  • 2 weeks later...
  • 1 month later...
  • 1 year later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.