วิธีค้นหาพิกัดของคุณใน Roblox

การรู้วิธีเข้าถึงพิกัดของผู้เล่นใน Roblox อาจเป็นกระบวนการที่ซับซ้อนและคลุมเครือ อย่างไรก็ตาม หากคุณพบวิธีที่จะเข้าถึงพิกัดและจัดการพวกมัน คุณจะมีพื้นฐานที่มั่นคงในการใช้ฟังก์ชันสร้างสรรค์อื่นๆ ของเกมและทดสอบทักษะการเขียนโปรแกรมของคุณ

วิธีค้นหาพิกัดของคุณใน Roblox

ในบทความนี้เราจะแสดงวิธีค้นหาพิกัดผู้เล่นใน Roblox

คุณได้รับพิกัดใน Roblox ได้อย่างไร?

ในการค้นหาพิกัดของตัวละคร วัตถุ และสถานที่ คุณต้องเรียนรู้วิธีเขียนสคริปต์ใน Roblox Studio แพลตฟอร์มนี้ช่วยให้คุณสร้างโลกและพื้นที่ของคุณเองและปรับแต่งได้ตามที่คุณต้องการ

ในขณะที่คุณเขียนสคริปต์ คุณจะต้องใช้ข้อมูลพื้นฐานที่ช่วยให้คุณเพิ่มศักยภาพของการเขียนสคริปต์ในสตูดิโอได้อย่างเต็มที่ ตัวอย่างที่ดีของข้อมูลดังกล่าวคือพิกัด เช่น ตำแหน่งของผู้เล่น

การไปถึงตำแหน่งของผู้เล่น (ฝั่งเซิร์ฟเวอร์) คุณจะต้องไปที่คุณสมบัติตัวละครของผู้เล่น (ผู้เล่น.ตัวละคร). แต่ก่อนหน้านั้น คุณจะต้องค้นหาวัตถุของผู้เล่น คุณสามารถทำได้โดยรับวัตถุของผู้เล่นทันทีที่พวกเขาเข้าสู่เซิร์ฟเวอร์ด้วยสคริปต์ปกติที่ใดที่หนึ่งในเวิร์กสเปซของคุณ

Roblox วิธีหาพิกัด

หากเกมของคุณมีผู้เล่นเพียงคนเดียว คุณสามารถวางวัตถุของผู้เล่นในที่เก็บวัตถุของคุณได้ คอนเทนเนอร์นี้สามารถเข้าถึงได้ทุกเมื่อที่คุณต้องการหาค่าในสคริปต์ฝั่งเซิร์ฟเวอร์ของคุณ

เพื่อแสดงให้เห็น:

game.Players.PlayerAdded:Connect(function(player) workspace.Data.Player.Value = ผู้เล่นสิ้นสุด)

'ข้อมูล' หมายถึงโฟลเดอร์ที่วางอยู่ในเวิร์กสเปซของคุณ และ 'ผู้เล่น' แสดงถึงคอนเทนเนอร์ ObjectValue ที่ชื่อว่า 'ผู้เล่น' ซึ่งมีวัตถุประสงค์เพื่อบันทึกวัตถุของผู้เล่น

แต่รหัสนี้ไม่ใช่ตัวเลือกเดียวของคุณ อย่าลังเลที่จะตั้งชื่อหรือแก้ไขตามที่คุณต้องการ หรือวางวัตถุของเครื่องเล่นตามที่คุณต้องการ

สคริปต์นี้ทำงานเมื่อผู้เล่นเข้าสู่เกม ในกรณีของเกมเล่นคนเดียว เซิร์ฟเวอร์มีผู้เล่นเพียงคนเดียว อย่างไรก็ตาม คุณสามารถแก้ไขโค้ดเพื่อติดตามผู้เล่นคนอื่น ๆ ได้ตามต้องการ

ในการเข้าถึงคุณสมบัติของผู้เล่นพร้อมกับตำแหน่งของมัน นี่คือลักษณะสคริปต์ปกติของคุณ:

ผู้เล่นในพื้นที่ = Workspace.Data.Player.Value – รับวัตถุของผู้เล่นและเก็บไว้ในตัวแปร 'ผู้เล่น'

local var = player.Character.UpperTorso.Position — รับตำแหน่ง vector3

สิ่งที่เกี่ยวกับการเข้าถึงแต่ละพิกัด?

คุณสามารถเข้าถึงพิกัด X, Y, Z ด้วยวิธีนี้:

local varX = player.Character.UpperTorso.Position.X local varY = player.Character.UpperTorso.Position.Y ท้องถิ่น varZ = player.Character.UpperTorso.Position.Z

ที่นี่ คุณสามารถใช้ UpperTorso เพื่อเป็นตัวแทนของ R15 Humanoids ด้วยเหตุนี้ มันจึงอาจใช้กลอุบายสำหรับโมเดลฮิวแมนนอยด์อื่นที่ไม่ใช่ R15 ได้

ฉันสามารถเลือกส่วนอื่นๆ ของร่างกายที่จะติดตามได้ไหม

ส่วนของร่างกายที่คุณติดตามไม่ได้สงวนไว้สำหรับ UpperTorso เท่านั้น วิธีเข้าถึงรายการเพิ่มเติมมีดังนี้

  1. ใช้ Developer Studio เพื่อเปิดเกมของคุณ
  2. ขณะที่เกมเปิดอยู่ ให้เลือก StarterPlayer
  3. ไปที่ HumanoidDefaultBodyParts (ค้นหาโดยใช้ "มุมมอง Explorer")
  4. นี่จะแสดงรายการส่วนต่างๆ ของร่างกายที่สามารถติดตามได้

(เครดิต: Derrick Bouchard – //gamedev.stackexchange.com/users/138624/derrick-bouchard)

คุณสามารถใช้พิกัดเพื่อเทเลพอร์ตที่ไหนสักแห่งได้หรือไม่

Roblox ค้นหาพิกัดของคุณ

เมื่อคุณได้ค้นพบวิธีเปิดเผยพิกัดใน Roblox แล้ว คุณจะต้องการทราบว่ามีกิจกรรมในจินตนาการใดบ้างที่คุณสามารถใช้ความรู้นั้นได้ ตัวอย่างเช่น คุณสามารถอำนวยความสะดวกในการเคลื่อนย้ายข้อมูลได้ หากคุณดึงข้อมูลตำแหน่งของเคอร์เซอร์ได้ นี่เป็นวิธีง่ายๆ ในการทำ:

เป้าหมาย = game.Players.LocalPlayer:GetMouse() .Hit x = target.X y = target.Y z = target.Z game.Players.LocalPlayer.Character:MoveTo(Vector3.new(x,y,z))

(เครดิต: มักซ์ - //www.roblox.com/users/234079075/profile)

โดยทั่วไปแล้วการเทเลพอร์ตใน Roblox เป็นอย่างไร?

Teleportation เป็นหนึ่งในคุณสมบัติที่มีประโยชน์ที่สุดใน Roblox ช่วยให้ผู้เล่นสามารถเคลื่อนที่ไปรอบๆ แผนที่ขนาดใหญ่ได้อย่างรวดเร็ว และทำให้มีปฏิสัมพันธ์มากขึ้น

อย่างไรก็ตาม การดำเนินการอย่างถูกต้องอาจเป็นเรื่องยาก โดยเฉพาะอย่างยิ่งหากคุณเพิ่งเริ่มใช้สคริปต์ ปัญหาที่พบบ่อยที่สุดปัญหาหนึ่งที่อาจเกิดขึ้นขณะเทเลพอร์ตคือการแตกของโมเดล ตัวอย่างเช่น หากคุณใช้สคริปต์ต่อไปนี้ คุณจะต้องแยกส่วนหัวออกจากลำตัว:

game.Workspace.Player.Torso.Position = Vector3.new(0, 50, 0)

คุณต้องใช้คุณสมบัติ CFframe และประเภทข้อมูล CFframe แทน นี่คือวิธีการทำและเคลื่อนย้ายผู้เล่นอย่างถูกต้อง:

game.Workspace.Player.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(0, 50, 0))

เป็นไปได้ไหมที่จะเทเลพอร์ตผู้เล่นทุกคน?

คุณสามารถเคลื่อนย้ายผู้เล่นทั้งหมดบนแผนที่ อย่างไรก็ตาม คุณต้องระวังตำแหน่งเป้าหมายเพื่อให้ลำตัวของผู้เล่นไม่เสียหาย นี่คือลักษณะของรหัส:

1. เป้าหมาย = CFrame.new(0, 50, 0) --อาจจะอยู่ใกล้อิฐหรือในพื้นที่ใหม่ 2. สำหรับผม ผู้เล่นใน ipairs(game.Players:GetChildren()) ทำ 3. --ตรวจสอบให้แน่ใจ มีตัวละครอยู่และ HumanoidRootPart มีอยู่ 4. ถ้า player.Character และ player.Character:FindFirstChild("HumanoidRootPart") แล้ว 5. --เพิ่มออฟเซ็ตของ 5 สำหรับอักขระแต่ละตัว 6. player.Character.HumanoidRootPart.CFrame = target + Vector3 .new(0, i * 5, 0) 7. end 8. end 

งานจำนวนมากนำไปสู่ความสนุกสนานมากมาย

การเข้ารหัสทั้งหมดที่นำไปใช้ในการดำเนินการต่างๆ เช่น การรับพิกัดและการเคลื่อนย้ายข้อมูล อาจทำให้คุณคิดว่า Roblox ไม่คุ้มกับปัญหา อย่างไรก็ตาม การเขียนโค้ดทำให้คุณสามารถจัดเตรียมเกมและความเป็นจริงที่โดดเด่นของคุณได้ ไม่เพียงแต่จะให้ผลตอบแทนคุ้มค่าในระยะยาวเท่านั้น แต่ยังเปลี่ยนเป็นกิจกรรมยามว่างได้อีกด้วย

คุณได้ลองเขียนโค้ดใน Roblox แล้วหรือยัง? มันไปได้อย่างไร? แจ้งให้เราทราบในส่วนความคิดเห็นด้านล่าง?


$config[zx-auto] not found$config[zx-overlay] not found