GameMaker|Variable 變數|程式基礎

更新於 發佈於 閱讀時間約 4 分鐘

這篇內容,將會講解什麼是變數,以及與變數相關的知識。有了這些概念,各位會更容易理解,要如何設計程式碼。

本篇教學所使用的系統是Windows 10,如果有按鍵相關的說明,會用Windows的系統來解釋。如果你用的是Mac系統,再麻煩自行換成相對應的按鍵。

raw-image


前置知識


在學習本篇內容之前,最好具備以下的前置知識,以免看不懂這篇教學的內容。


Variable 變數


在幼幼班的內容中,我有提到「自訂參數」的概念,如果把這個概念,換成程式語言中,比較通用的詞語,那就叫做「變數(Variable)」。

簡單來說,變數的功能,就是能讓我們存放一個「數值」,這個數值能有很多的「資料型態」,例如:實數(100、-50、3.14)、整數(100、50)、字串("你好!")。

然後我們就可以透過這些變數,來進行「邏輯判斷」,例如:當HP(變數)小於零的時候,角色死亡,遊戲結束。


Data Type 資料型態


在變數的說明中,我們知道變數可以存放,多種不同的資料型態。

換句話說,只要了解有哪些資料型態,我們就能知道,有哪些種類的「數值」,是能存到變數裡面的。

由於資料型態的篇幅較大,這裡不會詳細的介紹他們,而是會用另一篇教學來講解:

GameMaker|Data Type 資料型態|程式基礎


Variable Assignment 變數賦值


講人話的意思就是,將某個變數,設定成某個數值,讓人看不懂的專業術語,就是「變數賦值(Variable Assignment)」。

以下是在GameMaker中,常見的賦值方法:

a = 100 ;   //將a的數值,設定成100
​b = 200 ; //將b的數值,設定成200
c = a + b ; //將c的數值,設定成300,因為a+b=300,再把300丟進c變數裡
a = a + c ; //將a的數值,設定成400,因為a+c=400,再把400丟進a變數裡

另外,如果我們要將多個變數,設定成相同的數值,只能一個一個設定,「不能」使用「連續等號」的方式來設定:

a = b = c = 100 ; //任何變數都不能這樣進行設定

//正確的設定方法
a = 100 ;
b = 100 ;
c = 100 ;


變數的命名規則


就跟我們在幼幼班裡,所提到的資產命名一樣,變數也有自己的命名限制,不是所有字元都能用在變數的命名上面。

以下是變數的命名限制:

  1. 只能使用0~9、A~Z、a~z,以及底線符號( _ )
  2. 不能使用0~9作為開頭
  3. 最大長度為64個字元
  4. 不能使用「已經定義過」的詞彙,來當作變數名稱,例如:speed

與資產命名最大的不同地方,在於變數的命名是可以「重複」的,但這個重複是有條件的,他們必須在不同的「作用區域」。


Variable Scope 變數的作用區域


在中文圈裡,比較傳統的翻譯是「變數範圍」,但我覺得翻譯成「作用區域」,會比較容易理解。

在幼幼班的內容中有提到,我們能在物件(Object)中,設定程式碼。因此我們也能在物件中,來設定我們所需要的變數。

而在這個物件中所設定的變數,他的作用區域(能夠使用他的地方),就只能限制在這個物件當中,我們沒辦法把這個變數,用在「不同」的物件上面。


像這種,只能作用在某個物件區域的變數,在GameMaker當中,稱之為「Instance Variable(實體變數)」。

除了Instance Variable之外,還有Local Variable、Global Variable等等,不同的作用域變數。常用的作用域類型,會在其他的教學中講解:

GameMaker|Variable Scope 變數範圍|程式基礎


變數的可重複性


如果,我們在兩個不同的物件中,各自命名了一個,相同名稱的變數,那這兩個變數,會是不一樣的,裡面的數值當然也不會相等。

上面這串話很難懂對吧,沒關係,我舉個簡單的例子,各位應該就能理解了。


假設,我們需要兩種不同的敵人,因此我們建立了兩個物件,分別是「敵人A」和「敵人B」(下方會簡稱為A和B)。

當敵人的HP(生命值)歸零時,敵人就會消失。因此,我們在A和B當中,都加入了HP的變數,並將他們都設置成100。

此時,如果A受到傷害,那A的HP就會減少,但B的HP,依然會維持在100,不會受到影響。

從上面的例子中,我們就可以知道,雖然兩個物件中,都有HP的變數,但他們是相互獨立的,而且也各自擁有自己的數值,並不會相互的影響。


Built-in Variable 內建變數


簡單來說,就是GameMaker設計好的變數,通常我們只要改變他們,就能直接影響遊戲中的畫面,例如:XY座標、寬高數值。

在大多數的遊戲中,我們都是先設計「自訂變數」,接著再設計一連串的「偵測邏輯」。

當自訂變數,達成某個數值(或條件)的時候,再去改變「內建變數」,藉此來完成遊戲畫面的刷新和互動。




🔔如果內容對你有幫助,可以按個喜歡,這樣就能讓更多人,接觸到這些棒棒的內容🔔


✨祝各位也能開心的做出好遊戲✨

留言
avatar-img
留言分享你的想法!
avatar-img
開心做遊戲 Happy Making Game
11會員
68內容數
免費、開心、簡單,這是我做教學的理念,我希望透過我的行動,讓人們找回自我學習的快樂,讓那些資源稀少的自學者們,也能朝著自己的夢想來前進。讓我們一起開心的做出遊戲吧!
2024/08/12
這篇內容,將會講解什麼是陣列,以及與陣列相關的知識。包括陣列的簡介、陣列的資料限制、陣列的維度、一維陣列、二維陣列。
Thumbnail
2024/08/12
這篇內容,將會講解什麼是陣列,以及與陣列相關的知識。包括陣列的簡介、陣列的資料限制、陣列的維度、一維陣列、二維陣列。
Thumbnail
2024/08/11
這篇內容,將會講解什麼是「repeat迴圈」,以及與「repeat迴圈」相關的知識。包括repeat迴圈的簡介、break、continue。
Thumbnail
2024/08/11
這篇內容,將會講解什麼是「repeat迴圈」,以及與「repeat迴圈」相關的知識。包括repeat迴圈的簡介、break、continue。
Thumbnail
2024/08/11
這篇內容,將會講解什麼是「do until」,以及與「do until」相關的知識。包括do until的簡介、break、continue。
Thumbnail
2024/08/11
這篇內容,將會講解什麼是「do until」,以及與「do until」相關的知識。包括do until的簡介、break、continue。
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
認識 Python 的變數 (Variables)。變數是程式設計中最基礎且重要的概念之一。 什麼是變數? 簡單來說,變數就像電腦記憶體中的一個標籤或容器,您可以將各種不同的資料(例如數字、文字、真假值等)儲存到這個容器中。透過這個標籤,您可以在程式碼中方便地存取和操作這些資料。 變數
Thumbnail
認識 Python 的變數 (Variables)。變數是程式設計中最基礎且重要的概念之一。 什麼是變數? 簡單來說,變數就像電腦記憶體中的一個標籤或容器,您可以將各種不同的資料(例如數字、文字、真假值等)儲存到這個容器中。透過這個標籤,您可以在程式碼中方便地存取和操作這些資料。 變數
Thumbnail
這篇內容,將會講解什麼是運算子,以及與運算子相關的知識。包括運算子的簡介、賦值運算子、算術運算子、遞增/遞減、比較運算子、邏輯運算子。
Thumbnail
這篇內容,將會講解什麼是運算子,以及與運算子相關的知識。包括運算子的簡介、賦值運算子、算術運算子、遞增/遞減、比較運算子、邏輯運算子。
Thumbnail
今天要來介紹的是Python中資料型別的函數, 這幾天學習的素材是Youtube上“程式柴大大的Python 6 小時初學者課程”,一步一步帶著大家操作並解,學習中也別忘了要多多練習,練習的部分我是把我學到的東西請Chatgpt幫我出類似的題型並讓我練習。 以下我先寫出一個簡單的code,再加以
Thumbnail
今天要來介紹的是Python中資料型別的函數, 這幾天學習的素材是Youtube上“程式柴大大的Python 6 小時初學者課程”,一步一步帶著大家操作並解,學習中也別忘了要多多練習,練習的部分我是把我學到的東西請Chatgpt幫我出類似的題型並讓我練習。 以下我先寫出一個簡單的code,再加以
Thumbnail
這篇內容,將會講解什麼是資料型態,以及與資料型態相關的知識。包括資料型態的簡介、實數、布林值、 字串、陣列。
Thumbnail
這篇內容,將會講解什麼是資料型態,以及與資料型態相關的知識。包括資料型態的簡介、實數、布林值、 字串、陣列。
Thumbnail
這篇內容,將會講解什麼是變數,以及與變數相關的知識。包括變數、資料型態、變數賦值、變數的命名規則、變數的作用區域、變數的可重複性、內建變數。
Thumbnail
這篇內容,將會講解什麼是變數,以及與變數相關的知識。包括變數、資料型態、變數賦值、變數的命名規則、變數的作用區域、變數的可重複性、內建變數。
Thumbnail
這篇內容,將透過實戰教學,來講解「滑鼠點方塊」的程式碼。包括如何測試遊戲、座標系統、自訂參數和內建參數、if else、and、遊戲的邏輯設計、程式碼解析。
Thumbnail
這篇內容,將透過實戰教學,來講解「滑鼠點方塊」的程式碼。包括如何測試遊戲、座標系統、自訂參數和內建參數、if else、and、遊戲的邏輯設計、程式碼解析。
Thumbnail
宣告變數 變數是程式中用來儲存和表示數據的標識符號​,並將變數存放在某個記憶體位子 可以用ID的方法查找變數存在哪個記憶體,此方法有利於以後查找問題用。 在大多數程式語言中,變數需要事先聲明(宣告)並賦值。 而Python是一種動態類型語言,不需要顯式宣告變數類型,而是在賦值時自動進行推斷。
Thumbnail
宣告變數 變數是程式中用來儲存和表示數據的標識符號​,並將變數存放在某個記憶體位子 可以用ID的方法查找變數存在哪個記憶體,此方法有利於以後查找問題用。 在大多數程式語言中,變數需要事先聲明(宣告)並賦值。 而Python是一種動態類型語言,不需要顯式宣告變數類型,而是在賦值時自動進行推斷。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News