Скрипте, променљиве и функције у ГамеМакер: Студио

ГамеМакер: Студио и ИДЕ који нам пружа, можемо брзо и лако градити видео игре, дајући нам пријатељски и јасан интерфејс који нам такође пружа алате који нам помажу у развоју игара.

Један од ових алата је ГМЛ или ГамеМакер језик, који знатно проширује функционалност нашег окружења и омогућава нам кроз скрипте да напишемо сопствени код за пројекат, који ћемо користити заједно са осталим елементима за развој наших апликација.

Креирање скрипти
Пре него што наставимо са неколико редова кода, погледаћемо сајтове на којима су присутне наше скрипте, дајући нам преглед онога што можемо учинити са њима у зависности од ситуације.

Скриптирање унутар догађаја


Унутар објекта постоје догађаји повезани са њим, где ти догађаји могу садржати скрипту или садржати радњу која позива једну од ових. Ово ће бити једини пут у којем ће се функција Драг анд Дроп користити за скрипте.

До додајте скрипту за догађај морамо прво да направимо објекат из менија наших ресурса, а након креирања користимо дугме додај догађај да бисте га креирали:

ЕНЛАРГЕ

Након ове акције идемо на нашу картицу контрола и у одељку Код, превући ћемо прву икону која изгледа као лист папира у Радње и ми ћемо објавити, ова радња ће креирати нашу скрипту и можемо почети писати наше редове кода:

ЕНЛАРГЕ

Креирање скрипти као ресурса


Да бисмо креирали скрипту као ресурс, идемо у наш мени ресурса и бирамо Направи скрипту, где ће се након креирања скрипте појавити у стаблу ресурса у одговарајућем одељку:

ЕНЛАРГЕ

Имамо неколико начина за креирање скрипте и сваки од њих има своје предности, у случају скрипте као ресурса следећи услови су најкориснији:

  • Када многи објекти користе функционалност
  • Када функција захтева више уноса података или аргумената.
  • Када се користе глобалне радње попут учитавања и чувања.
  • Приликом имплементације сложене логике или алгоритама.

Скрипте у собама


Тхе Собе или собе су где се постављају одређени ресурси и где се игра игра. Ови ресурси се могу креирати као и сваки други из одговарајућег менија са Цреате Роом:

ЕНЛАРГЕ

Ове собе или собе такође могу садржати скрипте, за то када уређујемо собу идемо на картицу поставки унутар својстава собе и тамо бисмо требали видети дугме Креирање кода:

Притиском на ово дугме створит ће се празна скрипта повезана с том просторијом која ће се извршити када играч учита просторију, прије него што било који објект покрене властити догађај.

ГМЛ скрипте
Једном када знамо где можемо да створимо своје скрипте и са којим ресурсима да их повежемо је време да сазнамо делове који чине наше скрипте и концепте које морамо овладати, да видимо.

Програми


Програм у ГМЛ је низ инструкција које следе одређени редослед, где можемо рећи да се било која скрипта унутар ГМЛ је програм у коме се ови програми обично затварају заградама, погледајмо пример:
 {стр_тект = "Здраво свете"; к + = 10; иф (к> 200) {стр_тект = "Здраво Солветиц"; }}
Као што видимо, то је једноставан програм у коме правимо инстанцу променљиве типа стринг, а затим дефинишемо да се сваки оквир или 10 јединица додаје у Икс и на крају услов да ако је к веће од 200, додељивање се поново изводи.

Важно је напоменути да тачка -зарез није неопходна, међутим, за ГМЛ препоручује се употреба за побољшање читања кода. Такође је препоручљиво да не користите велика слова и да ако се било која променљива састоји од две речи, користите доњу црту.

Променљиве
Променљиве у ГМЛ Они су ти који нам омогућавају представљање вредности, а за разлику од осталих програмских језика они нису строго једног типа, односно не морају представљати одређену структуру података. Међутим, ове променљиве могу представљати један од ова два типа:

  • Реални број може бити 200 или 5.356. Ови цели бројеви такође могу одговарати одређеној инстанци објекта, собе, скрипте или друге врсте ресурса.
  • Низ који представља збирку алфанумеричких знакова који се редовно користе за приказ текста, као што су: "Хелло Ворлд."

Променљиви префикси


Као што је горе поменуто, променљиве могу одговарати било којој врсти података, чак и било којој врсти ресурса, али за решавање овог проблема имамо префиксе за променљиве који нам омогућавају да идентификујемо врсту података који се у њима налазе. Ово није обавезно, али је конвенција да бисмо могли боље да радимо у ГМЛ -у, на пример ако имамо стр_плаиер_наме Већ ћемо знати да је то низ, да видимо префиксе које можемо користити:
  • стр: Стринг
  • спр: Сприте
  • снд: Звучи
  • бг: Позадине
  • птх: Руте
  • сцр: Скрипте
  • фнт: Фонтови
  • тмл: Временска линија
  • обј: Објекат
  • рм: Соба
  • пс: Систем честица
  • нпр .: Емитирање честица
  • пт: Врста честица
  • ев: Догађај

Опсег променљивих


У нашим скриптама променљиве имају различите домете, што значи да начин на који можемо приступити променљивим и поставити вредности може варирати. Погледајмо различите домете које имамо:

Инстанце


Ове променљиве су јединствене за инстанцу или копије сваког објекта. Могу им се приступити и поставити сами и помоћу других објеката, што је најчешће у ГМЛ -у.

локалним


То су они који постоје само унутар функције или скрипте, декларисани су употребом резервисане речи вар а њима се може приступити само у скриптама у којима су дефинисани.

Глобално


Глобалној променљивој може приступити било који објекат путем скрипте, она припада игри, а не појединачној инстанци инстанце објекта.

Константе


Константе су променљиве чије се вредности могу само читати и не мењати, могу бити глобалне или чак инстанце.

Пошто знамо различите врсте опсега променљивих, погледајмо мали пример како извршавамо додељивање према опсегу:

 // случај 1 вар а = 1; // случај 2 глобалвар б; б = 2; // случај 3 глобал.ц = 10; // случај 4 селф.к = 10; // случај 5 и = 10;
За први случај имамо а локална променљива, то се лако идентификује употребом резервисане речи вар. У другом случају имамо декларацију а глобална променљива и ваш задатак. За случај 3, то је алтернативни начин декларисања и додељивања а глобална променљива и на крају за случај 4 и 5 су варијабле инстанце али један од њих кроз себе а други не.

Језичке променљиве


Коначно, што се тиче варијабли, имамо неке глобалне и инстанце варијабле које пружа ГамеМакер: Студио за сваки објекат, као нпр к, сприте или индекс да поменем неколико. Али постоје језичке променљиве које су такође глобалне здравље или здравље, резултат или резултат и животе или живи. Употреба ових променљивих зависи од сваког програмера, па можемо одлучити и без њих, али ова имена их знатно лакше памте и примењују у нашим програмима.

Карактеристике
А. функција у ГМЛ-у то је функционалност која вам омогућава покретање програма, може подразумевано доћи на језик или се може креирати као извор скрипте.

Ове функције могу извршити радњу као што је промена поравнања фонта током догађаја цртања, враћање вредности или обоје, при чему ове функције морају бити праћене заградама и, ако је потребно, одређеним аргументима за њихов рад. Погледајмо неколико редова кода да бисмо видели понашање неких функција:

 // случај 1 драв_селф (); // цасе 2 драв_арров (0,0,100,100,2); // случај 3 рандом_валуе = рандом (10, 23);
За случај број 1 имамо једноставну функцију која црта инстанцу, случај број 2 је функција која извршава радњу и потребни су јој аргументи за функционисање, коначно имамо функцију која извршава радњу, а то је да се добије случајна вредност и врати то на променљиву.

Постоји посебан случај који је сцрипт_екецуте, што је функција која нам омогућава приступ скриптама креираним као ресурси, а посебност је у томе што нам омогућава да користимо променљиве нашег скрипта, а затим га извршимо:

 селф.сцрипт = сцр_сцрипт_регоурсе; сцрипт_екецуте (селф.сцрипт, "аргумент", обј_буттон, 0,12, лажно);
Како можемо видети спектар ГамеМакер: Студио сеже далеко изван његовог интерфејса, имамо моћан алат као што је ГМЛ, који има елементе познате програмерима, као што су променљиве или функције, и кроз то можемо применити своје развојно знање на развој наших пројеката и игара.

wave wave wave wave wave