Skocz do zawartości
  • 0

Skrypt na randomtp do innego świata


fasdasdsaatrewq
 Udostępnij

Pytanie

13 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
1 minutę temu, Kormic napisał:

Przecież mówię o skrypcie...

Zauważyłem, ale mógłbyś mi to jakoś skrócić, żeby było tylko randomowe przeteleportowanie po wejściu przez portal, bez żadnych powiadomień - bo kod jest zbyt długi i go nie za bardzo rozumiem. Z góry dzięki.

Tu masz kod o tym getRandomLoc():
 

Cytat

 

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 minutę temu, fasdasdsaatrewq napisał:

Zauważyłem, ale mógłbyś mi to jakoś skrócić, żeby było tylko randomowe przeteleportowanie po wejściu przez portal, bez żadnych powiadomień - bo kod jest zbyt długi i go nie za bardzo rozumiem. Z góry dzięki.

Tu masz kod o tym getRandomLoc():

Proszę.

function getRandomLoc(xmin: integer=-1000, xmax: integer=1000, zmin: integer=-1000, zmax: integer=1000, world: text="world") :: location:
    while {_return} is not set:
        set {_x} to random integer between {_xmin} and {_xmax}
        set {_z} to random integer between {_zmin} and {_zmax}
        set {_loc} to highest block at location at {_x}, 0, {_z} in world ({_world} parsed as world)
        if block at {_loc} != lava or water:
            add 1 to y-loc of {_loc}
            if (block at {_loc}) and (block above block at {_loc}) != lava:
                set {_return} to {_loc}
    return {_return}

Funkcję możesz wykorzystać w kodzie poprzez jej wywołanie, przykładowo:

teleport player to getRandomLoc(-10000, 10000, -10000, 10000, "twoj_swiat")

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
25 minut temu, Kormic napisał:

Proszę.


function getRandomLoc(xmin: integer=-1000, xmax: integer=1000, zmin: integer=-1000, zmax: integer=1000, world: text="world") :: location:
    while {_return} is not set:
        set {_x} to random integer between {_xmin} and {_xmax}
        set {_z} to random integer between {_zmin} and {_zmax}
        set {_loc} to highest block at location at {_x}, 0, {_z} in world ({_world} parsed as world)
        if block at {_loc} != lava or water:
            add 1 to y-loc of {_loc}
            if (block at {_loc}) and (block above block at {_loc}) != lava:
                set {_return} to {_loc}
    return {_return}

Funkcję możesz wykorzystać w kodzie poprzez jej wywołanie, przykładowo:


teleport player to getRandomLoc(-10000, 10000, -10000, 10000, "twoj_swiat")

 

Chyba nie za bardzo rozumiem ten skrypt.
Daj mi po prostu, że jak wejdę  w portal:
 

on portal:
	cancel event...

i chcę żeby - przeteleportowało mnie w losowe kordynaty ((-500)- 500) do świata "Texas"

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, fasdasdsaatrewq napisał:

Chyba nie za bardzo rozumiem ten skrypt.

W linijce wywołującej funkcję pierwszy argument funkcji to minimalny koordynat X, drugi to maksymalny X, trzeci to minimalny Z, a czwarty to maksymalny Z. Co do piątego, jest to nazwa świata.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
8 minut temu, Kormic napisał:

W linijce wywołującej funkcję pierwszy argument funkcji to minimalny koordynat X, drugi to maksymalny X, trzeci to minimalny Z, a czwarty to maksymalny Z. Co do piątego, jest to nazwa świata.

ehhh... Chcę żebyś mi to zrobil, bo nie ogarniam tych funkcji...

Odnośnik do komentarza
Udostępnij na innych stronach

  • 1

Wystarczy jeden z miliona skryptów na losowe tp z forum i dopisanie in world "Texas"...

Lub pyraRTP od ZiemniaQ i dopisanie jednej linijki...

function getRandomLoc(xmin: integer=-1000, xmax: integer=1000, zmin: integer=-1000, zmax: integer=1000, world: text="world") :: location:
	while {_return} is not set:
		set {_x} to random integer between {_xmin} and {_xmax}
		set {_z} to random integer between {_zmin} and {_zmax}
		set {_loc} to highest block at location at {_x}, 0, {_z} in world ({_world} parsed as world)
		if block at {_loc} != lava or water:
			add 1 to y-loc of {_loc}
			if (block at {_loc}) and (block above block at {_loc}) != lava:
				set {_return} to {_loc}
	return {_return}

on portal:
	cancel event
	teleport player to getRandomLoc(-500,500,-500,500,"Texas")
Edytowane przez CoFFeIN04
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 godzinę temu, CoFFeIN04 napisał:

Wystarczy jeden z miliona skryptów na losowe tp z forum i dopisanie in world "Texas"...

Lub pyraRTP od ZiemniaQ i dopisanie jednej linijki...


function getRandomLoc(xmin: integer=-1000, xmax: integer=1000, zmin: integer=-1000, zmax: integer=1000, world: text="world") :: location:
	while {_return} is not set:
		set {_x} to random integer between {_xmin} and {_xmax}
		set {_z} to random integer between {_zmin} and {_zmax}
		set {_loc} to highest block at location at {_x}, 0, {_z} in world ({_world} parsed as world)
		if block at {_loc} != lava or water:
			add 1 to y-loc of {_loc}
			if (block at {_loc}) and (block above block at {_loc}) != lava:
				set {_return} to {_loc}
	return {_return}

on portal:
	cancel event
	teleport player to getRandomLoc(-500,500,-500,500,"Texas")

Dzięki, a takie pytanie - jakie wtyczki do tego są potrzebne?
Posiadam - SkQuery, SkRayFall,

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...