SAIL - Informacje o hexie

Gotowe kody SAIL'a, informacje na temat moddingu, itd.

Модератор: zoNE

Ответить
Аватара пользователя
zoNE
The Great Uniter & Site Administrator
The Great Uniter & Site Administrator
Сообщения: 2066
Зарегистрирован: Пт фев 17, 2006 3:44 pm
Откуда: Poland
Контактная информация:

SAIL - Informacje o hexie

Сообщение zoNE »

Serpent писал(а):W Original War wszystkie mapy zbudowane są z małych cegiełek tzw. hexów czyli symetrycznych sześcioboków.

Czasami może zajść potrzeba sprawdzenia co znajduje się na danym hexie (budynek, trawa czy czołg). Służy do tego specjalna funkcja:

Код: Выделить всё

HexInfo(x, y); 
Jako parametry funkcja przyjmuje koordynaty. Zwraca natomiast "zawartość" hexa, czyli:

Код: Выделить всё

-1: Na danym hexie znajdują się jakieś surowce lub element środowiska np. skrzynie, drzewa.
0: Hex jest pusty (może być na nim trawa).
>0: Hex jest zajęty.

Uwaga!
Funkcja nie uwzględnia rodzaju terenu czyli teren typu earth jak i dont enter są traktowane tak samo!
Funkcja ignoruje również miny i złoża.
Są to bardzo przydatne informacje zwłaszcza przy pisaniu skryptów dla komputera lub podkładaniu min w SAIL'u ;)

Poniżej dwa zastosowaia tej funkcji.
Spoiler:
Sprawdź czy dany hex jest pusty, następnie wyślij tam jednostkę.

Код: Выделить всё

Every 0$01 trigger HexInfo(2, 2) = 0 do
begin
ComMoveXY(unit, 2, 2);
End;
Niech jednostka (side=1) która wejdzie na hex (2,2) wypowie dialog.
// Jeżeli funkcja zwróciła wart. >0 to wartością tą jest dana jednostka :D

Код: Выделить всё

Every 0$01 trigger GetSide(HexInfo(2,2)) = 1 do
begin
Say(HexInfo(2,2), 'dialog1');
End;

Author: Serpent
Topic: https://forum.original-war.net/viewtopi ... =42&t=4481
Ответить