Peršokti į turinį

[ TUT/NEWBIE ] Komanda: /radijas ( su paaiškinimais, ir OnDialogResponse naudojimu )


etc

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3578 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Recommended Posts

Sveiki gyvi! Šiandieną norėčiau parašyti, tokią trumpą ir tikrai lengvą pamoką ( naujokams ). Joje aiškinsiu du dalykus: OnDialogResponse calback'o naudojimą ir ZCMD include naudojimą ( komandų kūrimą )

 

SETP #1

Norint sukūrti komandą ( šiuo metu zcmd varikliuku ) reikia turėti tą include. Atsisiunčiame jį iš čia: http://forum.sa-mp.com/showthread.php?t=91354 . Tada įsikeliame į savo pawno/include aplankalą ir modifiakcijos, prie visų #include prisirašome

#include <zcmd> // "instaliuojame" ZCMD include

SETP #2

Pradedame rašyti komandą... Apačioje modifikacijos ( jeigu yra komandų galite rašyti tenais po jomis ) rašome savo komandą. Jokiu būdu negalima rašyto po OnPlayerCommandText calback'u, jį galite visai ištrinti.

CMD:radijas( playerid, params[] ) // šiuo metu, nenaudosime "params[]" galite nerašyti jo
{ // atidarom komandos bracketą
    ShowPlayerDialog( playerid, 0, DIALOG_STYLE_LIST, "Radijas", "Radijos stotys:\nZipFM\nRadio Centras\nPower Hit Radio", "Rinktis", "Atšaukti" ) ;
/*
    parametru paaiskinimas
    * playerid - naudosime zaidejui, kuris parase komanda /radijas
    * 0 - DIALOG ID, pagal kuri atpazinsime po OnPlayerDialogRespone calback'u
    * DIALOG_STYLE_LIST - DIALOG tipas ( style ), šiuo metu naudojame LIST
*/
    return 1 ; // nureturninam komandą
} // uždarom komandos bracketą

Štai komanda parašyta! Bet dabar reikia, jog viskas veiktų? Skaitykite toliau!

 

SETP #3

Kad viskas atliktų savo "funkcijas", turime tai realizuoti calback'e 

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

taigi, jį ir susiraskite.

 

STEP #4

Realizuojame komandą, kad ji veiktų.

Viskas po tuo calback'u turi atrodyti taip

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
	switch( dialogid ) // nustatome, kad viskas bus naudojamo dialogui
	{
		case 0: // dialogo ID kuris dabar - 0
		{
			if( response ) // jeigu paspaude Rinktis
			{
				switch( listitem ) // renkames LISTUI
				{
					case 1: PlayAudioStreamForPlayer(playerid, ""); // Jeigu žaidėjas paspaudė ZipFM
					case 2:PlayAudioStreamForPlayer(playerid, ""); // Jeigu žaidėjas paspaudė RC
					case 3:PlayAudioStreamForPlayer(playerid, ""); // Jeigu žaidėjas paspaudė PWH
				}
			}
		}
	}
	return 1;
}

Štai ir viskas, jeigu kas kėblu, rašykite - padėsiu.

 

P.S

Į PlayAudioStreamForPlayer, tuos "" turite įrašyti savo url iki galūnės.

Nuoroda į komentarą
Dalintis per kitą puslapį

Ši tema yra neaktyvi. Paskutinis pranešimas šioje temoje buvo prieš 3578 dienas (-ų). Patariame sukurti naują temą, o ne rašyti naują pranešimą.

Už neaktyvių temų prikėlimą galite sulaukti įspėjimo ir pranešimo pašalinimo!

Prisijungti prie diskusijos

Palikti atsakymą galite iš karto, o užsiregistruoti vėliau. Jeigu jau turite paskyrą mūsų forume, Prisijunkite.

Svečias
Atsakyti šioje temoje...

×   Įklijuotas tekstas turi teksto formatavimą.   Pašalinti teksto formatavimą

  Galimi tik 75 veidukai.

×   Nuoroda buvo automatiškai įterpta.   Įterpti nuorodą paprastai

×   Jūsų ankstesnis pranešimas buvo atkurtas.   Išvalyti redaktorių

×   Jūs negalite įkelti nuotraukas tiesiogiai.Įkelkite arba įdėkite nuotraukas iš URL.

  • Šiame puslapyje naršo:   0 nariai

    • Nėra registruotų narių peržiūrinčių šį forumą.

Skelbimai


×
×
  • Sukurti naują...