Skocz do zawartości
  • 0

[DZIAłKI] Odległość 10 kratek pomiędzy działkami.


Pytanie

Witam.

Robię skrypt na działki wszystko spoko, tylko... Nie umiem zrobić odległości 10 kratek, żeby działki nie mogły się na siebie "nakładać".

Za odpowiedź, która pomoże mi w 100% daję najlepszą odpowiedź.

PS: Jak byście potrzebowali nazw zmiennych - piszcie!

Pozdrawiam! 

Edytowane przez LjayPL789
Odnośnik do komentarza
https://skript.pl/temat/28784-dzia%C5%82ki-odleg%C5%82o%C5%9B%C4%87-10-kratek-pomi%C4%99dzy-dzia%C5%82kami/
Udostępnij na innych stronach

6 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

jak masz środek działek to blokuj tworzenie działki jeśli:

2*rozmiar działki + 10 > odległość między środkiem nowej działki a środkiem działki z listy

ten warunek musi być spełniony dla wszystkich działek

btw. jeśli będzie opcja powiększania działek to zrób 2*max rozmiar działki żeby przy powiększaniu się na siebie nie nałożyły

w8 po przekątnych się nałożą :(

dbr

bierzesz x i z ze środków działek i jeśli x lub y będzie większe od 2*rozmiar działki + 10 to rób działke

jakoś tak:

set {_xp} to x-coordinate of player's location
set {_zp} to z-coordinate of player's location
loop {dzialkiLocs::*}:
    set {_xd} to x-coordinate of loop-value
    set {_zd} to z-coordinate of loop-value
    if 2*{rozmiarDzialki}+10 < difference between {_xp} and {_xd}:
        #przerywsz tworzenie dzialki
    if 2*{rozmiarDzialki}+10 < difference between {_zp} and {_zd}:
        #przerywsz tworzenie dzialki
#jeśli nie przerwało to rób działke

Edytowane przez LloydPL
  • 0

Masz dwie współrzędne, środek gracza x i y tego co chce postawić działkę. Rysujesz se w paincie kwadraty, obliczasz ile musi być od tej dzialki odległości między koordynatami x i z za pomocą difference distans. I tak z każdą działka w pętli. Jeżeli jest mniejszy to stopujesz pętle i wysyłasz stosowny komunikat. Jeżeli pętla przejdzie to umozliwiasz postawienie działki ;)

  • 0

Jeśli działki są symetryczne to zastosuj się w wzoru tylko:

X+10

X - SZEROKOŚĆ DZIAŁKI

i potem tylko sprawdzaj

if difference between {srodek.1} and {srodek.2} >= WIELKOŚĆ_DZIAŁKI(nie promień, tylko średnica(tak wiem promień i średnica są w kole))+10:
	TAK JEST WIĘCEJ
else:
	NIE JEST WIECEJ

 

Edytowane przez KrejzolekPRO
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ę...