Pelaajien koordinaattien saaminen Robloxissa voi olla monimutkainen ja epäselvä prosessi. Jos kuitenkin löydät tavan saavuttaa koordinaatit ja manipuloida niitä, sinulla on vankka perusta pelin muiden luovien toimintojen hyödyntämiseen ja ohjelmointitaitojen testaamiseen.
Tässä artikkelissa näytämme, kuinka löydät pelaajakoordinaatit Robloxista.
Kuinka saat koordinaatit Robloxissa?
Jotta voit löytää hahmojen, esineiden ja paikkojen koordinaatit, sinun on opittava käsikirjoittamaan Roblox Studiossa. Tämän alustan avulla voit luoda omia maailmoja ja alueita ja muokata niitä mieltymystesi mukaan.
Käsikirjoituksen aikana sinun on käytettävä perustietoja, joiden avulla voit maksimoida studion käsikirjoituksen mahdollisuudet. Hieno esimerkki tällaisesta tiedosta on koordinaatit eli pelaajien sijainnit.
Pelaajan aseman saavuttaminen (palvelinpuolella) vaatii sinun siirtymistä pelaajan hahmoominaisuuteen. (pelaaja.Hahmo). Mutta ennen sitä sinun on löydettävä pelaajan esine. Voit tehdä tämän hankkimalla pelaajan objektin heti, kun he tulevat palvelimelle tavallisella skriptillä jossain työtilassasi.
Jos pelissäsi on vain yksi pelaaja, voit sijoittaa pelaajaobjektin esinesäiliöösi. Tämä säilö on käytettävissä aina, kun etsit sen arvoa jostakin palvelinpuolen skriptistäsi.
Kuvittaa:
peli.Soittimet.SoitinLisätty:Yhdistä(toiminto(soitin)työtila.Data.Soitin.Arvo = pelaajan loppu)
"Data" edustaa työtilaan sijoitettua kansiota ja "Player" edustaa ObjectValue-säilöä nimeltä "Player", jonka tarkoituksena on tallentaa soitinobjekti.
Mutta tämä koodi ei ole ainoa vaihtoehtosi. Voit vapaasti nimetä sen tai muokata sitä mieltymystesi mukaan tai sijoittaa pelaajaobjektin haluamallasi tavalla.
Tämä skripti suoritetaan, kun pelaaja tulee peliin. Yksinpelissä palvelimella on vain yksi pelaaja. Voit kuitenkin muokata koodia niin, että voit seurata muita pelaajia haluamallasi tavalla.
Päästäksesi soittimen ominaisuuksiin ja sen sijaintiin, tavallinen skriptisi näyttäisi tältä:
paikallinen pelaaja = Workspace.Data.Player.Value – Hakee pelaajaobjektin ja tallentaa sen 'soitin'-muuttujaan
paikallinen var = pelaaja.Character.UpperTorso.Position — saa vector3-paikan
Entä yksittäisten koordinaattien saavuttaminen?
Voit käyttää X-, Y-, Z-koordinaatteja seuraavasti:
paikallinen varX = pelaaja.Character.UpperTorso.Position.X local varY = pelaaja.Hahmo.Ylävartalo.Sijainti.Y paikallinen varZ = pelaaja.Hahmo.Vartalon yläosa.Position.Z
Täällä voit käyttää UpperTorsoa edustamaan R15-humanoideja. Seurauksena on, että se ei välttämättä toimi muille humanoidimalleille kuin R15:lle.
Voinko valita muita seurattavia kehon osia?
Kehonosia, joita voit seurata, ei ole varattu vain UpperTorsolle. Näin pääset muihin:
- Käytä Developer Studiota pelin avaamiseen.
- Kun peli on auki, valitse StarterPlayer.
- Siirry HumanoidDefaultBodyPartsiin (löydä se "Explorer-näkymän" avulla).
- Tämä tuo esiin luettelon kehon osista, jotka mahdollistavat seurannan.
(Kirjat: Derrick Bouchard – //gamedev.stackexchange.com/users/138624/derrick-bouchard).
Voitko käyttää koordinaatteja teleporttaaksesi jonnekin?
Nyt kun olet oppinut paljastamaan koordinaatit Robloxissa, haluat tietää, onko olemassa mielikuvituksellisia toimintoja, joihin voit käyttää tätä tietoa. Voit esimerkiksi helpottaa teleportaatiota, jos olet hakenut kohdistimen sijainnin. Tässä on yksinkertainen tapa tehdä se:
kohde = peli.Pelaajat.PaikallinenPlayer:GetMouse() .Osuma x = kohde.X y = kohde.Y z = kohde.Z peli.Pelaajat.Paikallinen pelaaja.Character:MoveTo(Vector3.new(x,y,z))
(Kirjaukset: gyakranz – //www.roblox.com/users/234079075/profile).
Kuinka teleportaatio yleensä suoritetaan Robloxissa?
Teleportaatio on ylivoimaisesti yksi Robloxin hyödyllisimmistä ominaisuuksista. Sen avulla pelaajat voivat liikkua nopeasti suurilla kartoilla ja mahdollistaa siten paljon enemmän vuorovaikutusta.
Sen asianmukainen suorittaminen voi kuitenkin olla hankalaa, varsinkin jos olet uusi komentosarjan käyttäjä. Yksi yleisimmistä ongelmista, joita voi ilmetä teleportauksen aikana, on mallin rikkoutuminen. Jos esimerkiksi käytit seuraavaa komentosarjaa, erotat pään vartalosta:
game.Workspace.Player.Torso.Position = Vector3.new(0, 50, 0)
Sen sijaan sinun on käytettävä CFframe-ominaisuutta ja CFframe-tietotyyppiä. Näin teet sen ja teleportaat soittimen oikein:
game.Workspace.Player.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(0, 50, 0))
Onko mahdollista teleportoida kaikki pelaajat?
Voit teleportoida kaikki pelaajat kartalla. Sinun on kuitenkin oltava varovainen kohdeasennossa, jotta pelaajien vartalo pysyy ehjänä. Tältä koodi näyttäisi:
1. kohde = CFrame.new(0, 50, 0) --voi olla lähellä tiiliä tai uudella alueella 2. i, pelaaja ipairs(game.Players:GetChildren()) do 3. --Varmista hahmo on olemassa ja sen HumanoidRootPart on olemassa 4. jos pelaaja.Hahmo ja pelaaja.Hahmo:FindFirstChild("HumanoidRootPart") sitten 5. --lisää poikkeama 5 jokaiselle hahmolle 6. pelaaja.Hahmo.HumanoidiRootPart.CFrame = kohde + Vector3 .new(0, i * 5, 0) 7. end 8. end
Paljon työtä tuottaa paljon hauskaa
Kaikki koodaus, joka liittyy toimiin, kuten koordinaattien saamiseen ja teleportaatioon, saattaa saada sinut ajattelemaan, että Roblox ei ole vaivan arvoinen. Koodauksen avulla voit kuitenkin organisoida omat pelisi ja todellisuutesi. Tämä ei ole vain erittäin palkitsevaa pitkällä aikavälillä, vaan se voi myös muuttua vapaa-ajan harrastukseksi.
Oletko kokeillut koodausta Robloxissa? Kuinka se meni? Kerro meille alla olevassa kommenttiosiossa?