運行環境
Win7,Win8,Win10 win64
Reworld版本 體驗版
針對零基礎讀者的補充
下載安裝 Reworld對應版本
Reworld官網鏈接:http://www.reworlder.com/
下載後安裝後註冊賬號打開空地圖
思路分析:
扇形檢測爲了兩部分:首先是獲取起點和終點,這是一個基礎的方法,常用於檢測某些物體是否到達了與另外一個物體的距離,然後再通過遍歷達到尋找到此物體對此物體進行操作。
功能效果展示
零件搭建
一、搭建過程
1.在工作區創建一個零件
核心功能執行環境搭建
一、搭建過程
在工作區裏創建一個服務器腳本
打開服務器腳本,填入以下代碼:
local part = WorkSpace.零件 -- 獲取零件
local function Update()
local startPos = Vector3.New(part.Position.x - 2,part.Position.y - 2 ,part.Position.z - 2); -- 獲取起始點
local endPos = Vector3.New(part.Position.x + 2,part.Position.y + 2,part.Position.z + 2); -- 獲取終點
local interTable = WorkSpace:FindPartsInZone(startPos,endPos,nil,100); --獲取範圍內所有的物體第四個參數是獲取數量
for k,v in pairs(interTable) do -- 遍歷整個周圍所有物體
if v.ClassName == "Avatar" then
print(tostring(v.PlayerId)) -- 輸出角色ID
end
end
end
GameRun.Update:Connect(Update) -- 輸出角色ID
此時就完成以中心點爲基準的2*2的方形檢測
二、補充說明
1.什麼是服務器邏輯?
服務對象。
此服務下的腳本會在服務器上運行,用於放置服務器端遊戲邏輯 。
不可創建。
不能用RWObject.Create()函數創建此對象。
不可刪除。
不能用Destroy()函數刪除此對象。
不可複製。
不能用Clone()函數複製此對象。
2.什麼是服務器腳本?
只會在服務器運行的Lua腳本代碼,用於編寫服務器邏輯。
3.爲什麼要使用服務器腳本?
基於衝刺功能適用於單人和多人等不同環境,所以採用通用的服務器腳本。
- 服務器腳本與客戶端腳本不同,客戶端執行的操作只有本地客戶端,也就是玩家自己有效。而服務器執行的操作不僅針對單人有效,還針對與服務器相連的所有客戶端同步生效。
- 在多人遊戲中,如果這個對象的變化是針對一個人的,必須在客戶端腳本進行編寫;如果這個對象的變化是針對所有人的,那就必須在服務器腳本進行編寫。
- 對於只能在客戶端腳本修改的對象,如何讓服務器知曉變化結果是很重要的。這裏採用傳統遊戲的製作流程,也就是在客戶端進行修改,把修改後的結果通過與服務器通信的方式發送到服務器,再通過服務器進行邏輯運算,把執行結果再同步給所有客戶端。
好了,那麼物體的範圍檢測到這裏就完美實現了。
小夥伴們快去嘗試吧!