Skocz do zawartości
  • 0

Zcieranie zmiennej


filipuer
 Udostępnij

Pytanie

Siema!! Mam konkretny problem!

 

command /portal [<text&gt] [<text&gt]:
    trigger:
        if arg 1 is "ustaw":
            if arg 2 is "1":
                set {portal.1} to location of the player
                send "&a&lUstawiono pozycje 1!"
        if arg 1 is "ustaw":
            if arg 2 is "2":
                set {portal.2} to location of the player
                send "&a&lUstawiono pozycje 2!"
 
every 2 second:
    loop all players:
        wait 1 tick
        {portal.1} is not set:
            stop
        else:
            location of loop-player is {portal.1}:
            wait 1 tick
               {portal.2} is not set:
                   send "&c&lPozycja portalu 2 nie jest ustawiona!" to the loop-player
               else:
                   teleport loop-player to {portal.2}
                   send "&a&lTeleportowano!" to the loop-player
 
every 2 second:
    loop all players:
        wait 1 tick
        {portal.2} is not set:
            stop
        else:
            location of loop-player is {portal.2}:
                wait 1 tick
                {portal.1} is not set:
                    send "&c&lPozycja portalu 1 nie jest ustawiona!" to the loop-player
                else:
                    teleport loop-player to {portal.1}
                    send "&a&lTeleportowano!" to the loop-player
 
(Jeśli jest źle "wytabowane" to przepraszam ale tabowałem na szybko bo mi się usuneło kiedy kopiowałem.)
 
I gdy ustawie pozycje portali to po 1 teleportacji nie da się więcej razy. Ani nikt inny nie może się teloportować.
Edytowane przez filipuer
Odnośnik do komentarza
Udostępnij na innych stronach

1 odpowiedź na to pytanie

Rekomendowane odpowiedzi

  • 0

Lokacje zapisują nie tylko dokładny koordynat jak

x: 123.4567

y: 64

z: -51:1394

ale też chociażby ustawienie głowy.

Możesz zrobić tak, że zapisujesz do osobnych zmiennych x, y, z i świat lokacji a potem sprawdzasz czy x, y i z jest ok.

No ale prościej zrobić tak:

command /portalustaw <text> <number>:		if arg 1 is "ustaw":			if arg 2 is "1" or "2":				set {portal.%arg 2%} to location of targeted block				send "&a&lUstawiono pozycje %arg 2%!"every second:	loop all players:		if {portal.1} is set:			if location of block below loop-player is {portal.1}:				if {portal.2} is not set:				   send "&c&lPozycja portalu 2 nie jest ustawiona!" to loop-player				else:					teleport loop-player to block above {portal.2}					send "&a&lTeleportowano!" to loop-player		if {portal.2} is set:			if location of block below loop-player is {portal.2}:				if {portal.1} is not set:					send "&c&lPozycja portalu 1 nie jest ustawiona!" to loop-player				else:					teleport loop-player to block above {portal.1}					send "&a&lTeleportowano!" to loop-player
Tylko musisz dodać zabezpieczenie, bo jak raz wejdzie to już nie wyjdzie (bez przerwy tp z 1 na 2 i z 2 na 1)
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ę...