Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Убегалка от врагов :)

тут можно задать вопрос по скриптингу
Post Reply
Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Убегалка от врагов :)

Post by Stels »

хочу написать убегалку от врагов, в принципе представление имею как это сделать.
Меня интересует вопрос - можно ли как-то узнать направление, в которое смотрит враг или в каком направлении бежит?
nah nah
Developer
Developer
Posts: 414
Joined: 13.07.2011 11:23
Contact:

Re: Убегалка от врагов :)

Post by nah nah »

Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Re: Убегалка от врагов :)

Post by Stels »

Благодарю
Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Re: Убегалка от врагов :)

Post by Stels »

А еще подскажите, можно ли как-то узнаватьо наличии на пути препятствий? (стены всякие, скалы и т.п.)
Только через тайлы или как-то иначе можно?
Stels
Novice
Novice
Posts: 118
Joined: 15.02.2011 12:15

Re: Убегалка от врагов :)

Post by Stels »

так никто и не подскажет? или это просто нереально?
Az_Rieil
Neophyte
Neophyte
Posts: 34
Joined: 21.05.2014 17:18

Re: Убегалка от врагов :)

Post by Az_Rieil »

В теории - через GetPathArray.
Протестируй функцию к координатам куда невозможно добраться и посмотри какие координаты пишет в конце массива. Опять же в теории он должен вернуть false, или нули. И так "сканируя" все тайлы вокруг себя.
nah nah
Developer
Developer
Posts: 414
Joined: 13.07.2011 11:23
Contact:

Re: Убегалка от врагов :)

Post by nah nah »

Stels wrote:А еще подскажите, можно ли как-то узнаватьо наличии на пути препятствий? (стены всякие, скалы и т.п.)
Только через тайлы или как-то иначе можно?
Выдрано из делфийской обёртки.

Code: Select all

CheckLOS(xf, yf : Word; zf : ShortInt; xt, yt : Word; zt : ShortInt; WorldNum : Byte; LOSCheckType : Byte; LOSOptions : Cardinal) : Boolean;

Code: Select all

TLOSCheckType = (losSphere = 1, losSphereAdv = 2, losPOL = 3, losRunUO = 4);
TLOSCheckOption = (losSphereCheckCorners,losPolUseNoShoot,losPolLOSThroughWindow);
TLOSCheckOptions = set of TLOSCheckOption;
Post Reply