Skocz do zawartości
  • 0

RTP Poprawa


UnioNS

Pytanie

Witam mam skrypt na rtp sciagniety byl z neta troche go edytowalem lecz nie wiem jak dodac ze jak gracza nie tepnie bo teren nie spelnia wymagan to wykonuje komende od poczatku. Dopiero po tepnieciu gracza przestaje caly czas uzywac komendy od poczatku.

options:
    min.x: -2500
    max.x: 2500
    min.z: -2500
    max.z: 2500
    cooldown: 1 # in minutes

variables:
    {cd::%player%} = false

Command /rtp:
    trigger:
        if world is not "world":
            message "&4UWAGA! &fNa tym swiecie nie działa &c/rtp"
        else:
            if {cd::%player%} is true:
                send "&cPrzed chwilą się teleportowałeś. Musisz chwilę poczekąć"
            else:
                set {_loc::old} to player's location
                while player's location is {_loc::old}:
                    set {_loc::new} to location at random number between {@min.x} and {@max.x}, 0, random number between {@min.z} and {@max.z}
                    loop blocks above {_loc::new}:
                        if loop-block and block above loop-block are air:
                            if block under loop-block is not air or water or lava:
                                set {_loc::new} to location of loop-block
                                teleport player to {_loc::new}
                                if light level at player <= 2:
                                    set block at player to torch
                                stop loop
                            else:
                                message ""
                    wait 10 ticks
                    set {cd::%player%} to true
                    wait {@cooldown} minutes
                    set {cd::%player%} to false
                    stop

 

Odnośnik do komentarza
https://skript.pl/temat/44607-rtp-poprawa/
Udostępnij na innych stronach

2 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 1
29 minut temu, UnioNS napisał:

Witam mam skrypt na rtp sciagniety byl z neta troche go edytowalem lecz nie wiem jak dodac ze jak gracza nie tepnie bo teren nie spelnia wymagan to wykonuje komende od poczatku. Dopiero po tepnieciu gracza przestaje caly czas uzywac komendy od poczatku.

Możesz w tym celu wykorzystać funkcję getRandomLoc() autorstwa użytkownika ZiemniaQ. Zawiera ona losowanie koordynatów i sprawdzanie terenu. Losuje ona koordynaty tak długo jak teren jest niezgodny (blok w wylosowanej lokalizacji to woda lub lawa).

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}

 

Odnośnik do komentarza
https://skript.pl/temat/44607-rtp-poprawa/#findComment-279926
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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