Unity C# | public公用函式應用_控制中心(Mannager)

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

前言

  撰寫程式,能介紹的內容相當多,如何從中抽絲剝繭得到撰寫文章的方法就是一門需要鍛鍊的功夫,在撰寫程式的過程中,把飄忽的靈感記錄下來,就能得到許多值得撰寫的內容。

  這篇文章將介紹public函式應用,回顧保護層級、無類型兩個核心重點,再介紹遊戲製作重點程式(Script),再到控制中心Script製作與方針。

保護層級

  保護護層級主要在形容公用(public)跟私有(private),限制這個程式(Script)的使用範圍,公有讓資料可以被其他程式讀取,私有則否,在Unity中沒有特別註明的欄位與函式相當於私有,不過在程式設計師為了閱讀跟編輯習慣,似乎會習慣宣告私有,我也會習慣的宣告private。

  在之前的文章有介紹過保護層級的概念,詳細可以參考下面的連結,保護層級還應用在封裝、程式維護等方面。

Unity C# | 程式維護概念 & 唯讀(readonly) 使用

void函式

  在變數和函式中,基本上每一個有進行運算的資料,就需要回傳目標,如果不需回傳的無類型(void)類型,則不會進行回傳,代表運算完後不會回傳,計算本身就是目的,在資料型態的宣告前面添加「void」即可。

  在之前的文章有介紹過無類型的概念,像戲可以參考下面的連結,無類型通常用於函式,表達不會回傳的一種方式。

Unity C# | 無類型(void)及普通回傳類型

控制中心

  在進行遊戲製作,有很多時候會需要一個負責管理單位的控制中心,負責監督事件,依據不同狀況進行不同的控制,我通常會製作一個程式(Script)來管理這些物件,並依據不同命名為不同的控制中心。

敵人控制中心(EnemyMannager)

  用於敵方單位的啟用,在監控條件觸發後,直接呼叫該敵人內部的函示,達成多數敵人監控的目的。

//在Mannager中
[SerializeField]
private Object[] Enemys;

//Mannager中的判斷式
if(Enemys[0].變數 .........)
{
  ...
  Enemys[0].公用函式();
  ...
}

  在Unity中把敵人單位放置在Mannager中Enemys的陣列中的位置,就是程式中呼叫的陣列位置,由Enemy[0]為起點,不限制陣列上限。

數據控制中心(DataMannager)

  當擁有豐富的變數時可以創建一個數據控制中心來處理所有的變數,使用公用函式讓其他程式呼叫,可以陳列所有使用到的參數,依據不同的方向,可以有不同的變形方式,我將以「狀態控制中心(StateMannager)」繼續介紹。

  遊戲中有很多數值位於同一個單位,尤其是玩家,血量、恢復、攻擊力、子彈數、子彈恢復等等....,集合參數並建立公用函式,其他程式只需要呼叫即可。

//在StateMaanager中
private HP;
public void HPLose(int a)
{
  HP -= a;
}

//在其他程式中創建控制中心,使用Script抓取或Unity拉取都可,連結控制中心
private StateMannager stateMannager;
//在函數中
private void hurtPlayer()
{
  ...
  stateMannager.HPLose(5);
  ...
}

結尾

  公用有相當多的使用方法,在設計數值計算和事件監控時,很常使用到這種處理方式,最近在撰寫程式時,對公用函式有更深刻的理解,於是發這篇文章作為紀錄。


raw-image


留言
avatar-img
留言分享你的想法!
avatar-img
瓶裝雪的沙龍
108會員
247內容數
對設計師如何成長為設計師好奇嗎? 2020年九月,我進入大學學習當一位設計師,從開始到沉寂,再到重燃熱忱,我將在方格子紀錄我的成長歷程、理念、心情,分享我在這段旅程中所經歷的故事。
瓶裝雪的沙龍的其他內容
2024/09/22
魔火術師是第三人稱動作射擊遊戲,屬於專題畢業製作,在畢業組成新的團隊後優化並上架。
Thumbnail
2024/09/22
魔火術師是第三人稱動作射擊遊戲,屬於專題畢業製作,在畢業組成新的團隊後優化並上架。
Thumbnail
2024/01/26
這篇文章將會講述虛擬(virtual)與覆蓋(override)的簡易使用方式。
Thumbnail
2024/01/26
這篇文章將會講述虛擬(virtual)與覆蓋(override)的簡易使用方式。
Thumbnail
2023/12/29
講述遊戲設計從新手到專業的發展方向。
Thumbnail
2023/12/29
講述遊戲設計從新手到專業的發展方向。
Thumbnail
看更多
你可能也想看
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
每年4月、5月都是最多稅要繳的月份,當然大部份的人都是有機會繳到「綜合所得稅」,只是相當相當多人還不知道,原來繳給政府的稅!可以透過一些有活動的銀行信用卡或電子支付來繳,從繳費中賺一點點小確幸!就是賺個1%~2%大家也是很開心的,因為你們把沒回饋變成有回饋,就是用卡的最高境界 所得稅線上申報
Thumbnail
深入探討一些程式碼撰寫的習慣
Thumbnail
深入探討一些程式碼撰寫的習慣
Thumbnail
這篇文章將會講述物件池的基本概述,並介紹應用方向。
Thumbnail
這篇文章將會講述物件池的基本概述,並介紹應用方向。
Thumbnail
這篇文章將會講述設計模式中的狀態模式,其資料源自於書籍、網路、個人理解,從簡介→架構→撰寫→測試的整個流程進行介紹與分享。
Thumbnail
這篇文章將會講述設計模式中的狀態模式,其資料源自於書籍、網路、個人理解,從簡介→架構→撰寫→測試的整個流程進行介紹與分享。
Thumbnail
這篇文章將會介紹建構式(Constructor),這是一個隱藏在程式腳本中的重要知識,我們極常使用建構式,但新手程式員幾乎不會知道它。
Thumbnail
這篇文章將會介紹建構式(Constructor),這是一個隱藏在程式腳本中的重要知識,我們極常使用建構式,但新手程式員幾乎不會知道它。
Thumbnail
這篇文章將會講述這款遊戲的開發預計與遊戲內系統的清單粗估。
Thumbnail
這篇文章將會講述這款遊戲的開發預計與遊戲內系統的清單粗估。
Thumbnail
這篇文章將會講述類圖的基本介紹,並且詳細敘述從零開始製作完整的類圖流程。
Thumbnail
這篇文章將會講述類圖的基本介紹,並且詳細敘述從零開始製作完整的類圖流程。
Thumbnail
  這篇文章將介紹public函式應用,回顧保護層級、無類型兩個核心重點,再介紹遊戲製作重點程式(Script),再到控制中心Script製作與方針。
Thumbnail
  這篇文章將介紹public函式應用,回顧保護層級、無類型兩個核心重點,再介紹遊戲製作重點程式(Script),再到控制中心Script製作與方針。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News