UNET連線遊戲(八){鬼抓人}

本篇使用的是5.3版後有UNET的UNITY
目標:基本連線遊戲機制+線上怪物

1.延續前篇(UNET連線遊戲(七){原來這就是掛掉的感覺})

除了連線玩家,以及場景的布置外,還可以在場中加入一些由伺服器控制的NPC怪物增添遊戲的樂趣。首先處理場景的布置~
unet-hit-116為了節省效能,我們開啟Window→Lighting關閉Auto Bake並烘焙貼圖後關閉即時的GI渲染,讓遊戲運行的快些節省網路效能。
unet-hit-117

繼續閱讀 “UNET連線遊戲(八){鬼抓人}"

UNET連線遊戲(七){原來這就是掛掉的感覺}

本篇使用的是5.3版後有UNET的UNITY
目標:基本連線遊戲機制+陣亡後延遲重生

1.延續前篇(UNET連線遊戲(六){你快掛囉,HUD_UI續})

已經有血條的控制與顯示後,接下來針對陣亡的玩家做一些對應的控制,例如:

  • 不能再發射子彈
  • 不能繼續移動
  • 停留數秒後才重生
  • 畫面變紅的陣亡提示
  • 以及模擬暈眩

2.以上行為可以改寫之前的DamageScript.cs來達成對陣亡人物的行動限制,不能發射子彈的部分可以透過關閉GunController腳本達成(把槍的零件關閉),不能移動則透過關閉FirstPersonController fpsController腳本達成,畫面變紅則需要Image的UI。

增加上列的引用和宣告,並於Start()處取得相關零件,如下

繼續閱讀 “UNET連線遊戲(七){原來這就是掛掉的感覺}"

UNET連線遊戲(六){你快掛囉,HUD_UI續}

本篇使用的是5.3版後有UNET的UNITY
目標:基本連線遊戲機制+敵方玩家血條(UI)

1.延續前篇(UNET連線遊戲(五){死神之眼我看的見你的名子,HUD_UI})
現在我們必須要讓敵方UI與他自己的HP兩產生互動,但在這邊其實我方也是相對的;意思是其實不管是誰的血量都應該要告知SERVER後同步給所有玩家,所以接下來我們要大刀闊斧的修正程式內容。

首先是玩家自己的UI實際上也應該要像敵方UI一般生成帶入,只是型態有所不同,因此這裡我們要做的事情是把之前做好的我方HPBAR(綠色一大條的)也掛上先前的UIReset.cs還有NetowrkIdentity的套件
unet-hit-035

隨後將PLAYER_ID放到HP階層下當成子物件,拖曳到Resources資料夾製作成預製物,並刪除場景上的HP
unet-hit-036

繼續閱讀 “UNET連線遊戲(六){你快掛囉,HUD_UI續}"

UNET連線遊戲(五){死神之眼我看的見你的名子,HUD_UI}

本篇使用的是5.3版後有UNET的UNITY
目標:基本連線遊戲機制+敵方玩家血條(UI)

1.延續前篇(UNET連線遊戲(四){我快死了,HP_UI})

  • 為了區分連線的玩家ID和自己的ID,需要在HUD增加一個Text的UI重新命名為PLAYER_ID,並參考下列設定
    結構:
    unet-hit-025
    效果預覽:
    unet-hit-026unet-hit-027

繼續閱讀 “UNET連線遊戲(五){死神之眼我看的見你的名子,HUD_UI}"

UNET連線遊戲(三){廝殺吧!!吃下我的子彈}

本篇使用的是5.3版後有UNET的UNITY
目標:基本連線遊戲機制+發射物體和其他玩家互動(攻擊)

1.延續前篇(UNET連線遊戲(二){讓子彈飛一毀})

  • 邏輯概念:人物被子彈擊中要產生相應的處理,因此需要掛載一個程式在人物身上,來判斷是否被擊中。
    透過此程式呼叫SERVER讓SERVER回覆PLAYER發生了什麼事情。
  • 首先簡單改寫一下原來子彈的內容
    希望子彈在擊中目標後也會消失

     

繼續閱讀 “UNET連線遊戲(三){廝殺吧!!吃下我的子彈}"