東坡下載:內(nèi)容最豐富最安全的下載站!

首頁(yè)IT技術(shù) → gamemaker圖文教程之關(guān)鍵字var的大用處!

gamemaker圖文教程之關(guān)鍵字var的大用處!

相關(guān)文章發(fā)表評(píng)論 來(lái)源:本站整理時(shí)間:2015/9/23 20:09:00字體大。A-A+

更多

作者:專題點(diǎn)擊:186次評(píng)論:0次標(biāo)簽: 游戲制作軟件

 

啟動(dòng)GM8.0,GMS也行= = 。。。 為了保證大家在實(shí)驗(yàn)的時(shí)候與本教程完全同步,推薦大家使用論壇的超強(qiáng)漢化破解版GM8.0
新建一個(gè)工程,創(chuàng)建物體和房間,并把這個(gè)物體放入到房間里。


這里我給object0放了個(gè)精靈,目的是讓大家知道已經(jīng)把這貨添加進(jìn)了房間里(我這么做貌似沒(méi)啥必要,防誤解還是扔進(jìn)去吧。)
 
之后,就要往物體里面寫(xiě)代碼了,在object0的創(chuàng)建事件中,寫(xiě)下如下代碼

fuck = "franniss";
這是在物體上簡(jiǎn)單的定義了一個(gè)變量
接下來(lái),在物體的空格鍵按下事件中,寫(xiě)下如下代碼。

show_message(fuck);
效果可想而知,在敲擊空格鍵的時(shí)候,屏幕上會(huì)彈出一個(gè)消息提示框,那我我們來(lái)試一下。
敲擊空格鍵,彈出消息框:

 
一切看上去很正常,嗯。接下來(lái),稍微改動(dòng)一下代碼,將創(chuàng)建事件中的代碼改寫(xiě)成如下代碼。

var fuck;

fuck = "franniss";
這段代碼,就用到了var關(guān)鍵字,定義了一個(gè)臨時(shí)變量。
運(yùn)行游戲,敲擊空格鍵。

 
這時(shí)我們就發(fā)現(xiàn),在敲完空格鍵之后,并沒(méi)有彈出信息框,而是報(bào)了錯(cuò)。錯(cuò)誤的原因是一個(gè)未知的變量fuck,
我們已經(jīng)在創(chuàng)建事件中定義了fuck變量,為什么在按下空格事件中,這個(gè)變量不起作用呢?
實(shí)驗(yàn)證明,在創(chuàng)建事件中,已經(jīng)成功的定義出了fuck變量,但是在敲擊空格鍵的時(shí)候,這個(gè)變量就不存在了,所以,我們得出以下結(jié)論:
使用var關(guān)鍵字定義過(guò)的變量,只影響于當(dāng)前事件,并不作用于整個(gè)實(shí)例,當(dāng)事件結(jié)束的時(shí)候,這個(gè)變量會(huì)自動(dòng)的從內(nèi)存中刪除掉。
這個(gè)結(jié)果只是當(dāng)前得出的,并不是最標(biāo)準(zhǔn)的,下面,將在這個(gè)實(shí)驗(yàn)的基礎(chǔ)上增加更多的動(dòng)作來(lái)得到更準(zhǔn)確的定義。


刪除掉剛剛物體中的“按下空格”事件,并對(duì)創(chuàng)建事件進(jìn)行改動(dòng)。向創(chuàng)建事件中拖入兩個(gè)代碼按鈕,如下圖所示。

 
在第一個(gè)代碼塊中,寫(xiě)下如下代碼:

var sb;

sb = "franniss";
在第二個(gè)代碼塊中,寫(xiě)下如下代碼:

show_message(sb);
接下來(lái),運(yùn)行游戲。查看效果

 
根據(jù)運(yùn)行結(jié)果我們會(huì)發(fā)現(xiàn),程序依然報(bào)錯(cuò),那么問(wèn)題來(lái)了,我的var定義的變量明明和show_message時(shí)的變量在同一個(gè)事件里面,為什么還會(huì)報(bào)錯(cuò)。
這時(shí)我們?cè)賹?duì)程序進(jìn)行修改,刪除創(chuàng)建事件的一個(gè)代碼按鈕,留下一個(gè),并改寫(xiě)成如下代碼:

var sb;

sb = "franniss";

show_message(sb);
運(yùn)行后你會(huì)發(fā)現(xiàn),程序正常運(yùn)行,彈出了灰色的信息提示框。

 

實(shí)驗(yàn)證明,在創(chuàng)建事件中,已經(jīng)成功的定義出了sb變量,但是想讓這個(gè)變量有效,所有使用到這個(gè)變量的語(yǔ)句都要和該變量的var定義處在同一代碼段內(nèi),因此,我們得出以下結(jié)論:
使用var關(guān)鍵字定義過(guò)的變量,只影響于當(dāng)前代碼段,并不作用于整個(gè)實(shí)例,當(dāng)該代碼段結(jié)束的時(shí)候,這個(gè)變量會(huì)自動(dòng)的從內(nèi)存中刪除掉。
我們大家所說(shuō)的臨時(shí)變量,其實(shí)就是就是以前直接定義的一些變量,并不加var和global關(guān)鍵詞的修飾,其實(shí)這種說(shuō)法是不對(duì)的,我們可以認(rèn)為,在GM中存在于四種類型的變量:
1.使用關(guān)鍵詞globalvar定義的全局變量;
2.不使用任何關(guān)鍵詞所定義在實(shí)例上的成員變量;
3.在變量名前加上global.的特殊的,定義在global上的成員變量;
4.使用關(guān)鍵詞var定義的,只作用于當(dāng)前代碼段上的臨時(shí)變量。
所謂的成員變量,只得就是該變量是影響整個(gè)實(shí)例的,在變量名使用global.這個(gè)比較特殊,可以稱之其為成員變量,但是我認(rèn)為,在這里為了讓大家不要和globalvar發(fā)生無(wú)解,還是將它當(dāng)作定義在global實(shí)例上的成員變量比較好,而且這個(gè)實(shí)例會(huì)全程存在于游戲中,它是一個(gè)比較特殊的實(shí)例。

  • 游戲制作軟件大全
游戲制作軟件大全
(6)游戲制作軟件大全

游戲制作是讓人覺(jué)得很難的一個(gè)事情,但是目前網(wǎng)絡(luò)上流傳了很多制作器,不論是單機(jī)游戲還是文字游戲,地圖制作工具和動(dòng)畫(huà)編程游戲,都不在話下。今天幫大家整理了一下,從搜索引擎、動(dòng)畫(huà)編程到RPG和文字類型的制作軟件。東坡小編給大家?guī)?lái)的是游戲制作軟件大全。

...更多>>
  • 中文游戲大師(Chinese Game Master

    09-23 / 5.7M

    推薦理由:中文游戲大師(Chinese Game Master)是一款獨(dú)立的游戲制作軟件,采用Lua腳本驅(qū)動(dòng),并全面漢化lua語(yǔ)句,極大
  • 傻瓜式AVG游戲生成器1.31 綠色最新

    11-12 / 15.1M

    推薦理由:想自己制作一款A(yù)VG游戲嗎?想玩一款屬于自己的游戲的朋友就可以下載使用小編的這款傻瓜式AVG游戲生成器,有
  • 彩虹文字游戲制作精靈(紅)v1.09 中

    06-03 / 66.3M

    推薦理由:彩虹文字游戲制作精靈軟件追求快速、可視化、人性化、無(wú)編碼的操作過(guò)程,力求讓游戲制作的門(mén)檻降到最低。我
  • 橙光文字游戲制作工具2.4.7.0716官

    07-17 / 94.8M

    推薦理由:橙光文字游戲制作工具可以幫助游戲迷們自己動(dòng)手制作文字冒險(xiǎn)、戀愛(ài)養(yǎng)成類游戲,使用起來(lái)很簡(jiǎn)單,菜鳥(niǎo)也能作
  • RPG Maker VX|RPG地圖制作工具V1.0

    07-08 / 20.4M

    推薦理由:相信不少朋友跟我一樣,玩過(guò)不少RPG游戲了,對(duì)怎么制作非常感興趣,其實(shí)呢一點(diǎn)也不難,這里分享一個(gè)RPG地圖
  • RPG制作大師XP(RPG Maker XP)1.0.3

    09-24 / 21.6M

    推薦理由:RPG制作大師XP能夠讓不是很懂編程的人來(lái)借助這個(gè)平臺(tái)制作出角色扮演游戲,通過(guò)它你就能制作出漂亮唯美的畫(huà)面

擴(kuò)展知識(shí)

相關(guān)評(píng)論

閱讀本文后您有什么感想? 已有 人給出評(píng)價(jià)!

  • 2791 喜歡喜歡
  • 2101 頂
  • 800 難過(guò)難過(guò)
  • 1219 囧
  • 4049 圍觀圍觀
  • 5602 無(wú)聊無(wú)聊
熱門(mén)評(píng)論
最新評(píng)論
發(fā)表評(píng)論 查看所有評(píng)論(0)
昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過(guò)審核才能顯示)