Функции управления спрайтами
Автор: zmpeter 01.07.2009 14:15
CreateSprite(int nvid,int x,int y,int z,int dir=0,int parent=0);создает спрайт вида nvid в указанных координатах. dir - направление, parent - родительский спрайт.
возвращает UIN нового спрайта.
Flagman(int army);
возвращает UIN управляемого в данный момент юнита для армии army.
Flagman(0) - то, чем управляет сейчас игрок (герой, машина, танк и т.д.)
FirstUnit(int typeunit,int army=-1);
возвращает UIN первого юнита данного типа и армии, если армия -1 то любой армии
NextUnit();
возвращает UIN следующего юнита, работат только если вызывалась FirstUnit(..)
GetSprite(int type,int x,int y,int prev=0);
возвращает UIN спрайта пересекающий координаты x,y, с типом type (см. #define GETSPRITE_XXX), расположенный дальше чем prev от x,y
GetSpriteScr(int type,int scr_x,int scr_y);
возвращает UIN спрайта пересекающий экранные координаты scr_x,scr_y, с типом type (см. #define GETSPRITE_XXX)
FindNearestSprite(int type,int x,int y,int radius,int prev=0);
возвращает UIN ближайшего спрайта спрайт на расстоянии не дальше radius, с типом type (см. #define GETSPRITE_XXX), расположенный дальше чем prev от x,y
FirstInBox(int left,int top,int right,int bottom);
для перебора объектов с P_Map(P_Hash) в прямоугольнике, координаты не экранные.
возвращает UIN первого объекта в списке
NextInBox();
возвращает UIN следующего объекта, работате только вместе с FirstInBox(..)
FirstSprite();
полный перебор всех спрайтов в игре.
возвращает UIN первого объекта в списке.
работает ОЧЕНЬ МЕДЛЕННО (т.к. МНОГО спрайтов), поэтому использовать в некритичных местах (например, при инициализации карты сразу после загрузки)
NextSprite();
возвращает UIN следующего объекта, работате только вместе с FirstSprite(..)
Список скриптовых extern-функций движка игры Alien Shooter 2.