SafeMoving

Добавлен , не публикуется
library SafeMoving
{

    private float MinX = - 8000.
    private float MaxX = 23200.
    private float MinY = -31700.
    private float MaxY = -500.

    #define
    {
        SetUnitX=SetUnitXEx
        SetUnitY=SetUnitYEx
        SetUnitPosition=SetUnitPositionEx
    }

    private float CheckX(float x)
    {
        if x>MaxX
        {
            return MaxX
        }
        elseif x<MinX
        {
            return MinX
        }
        return x
    }

    private float CheckY(float y)
    {
        if y>MaxY
        {
            return MaxY
        }
        elseif y<MinY
        {
            return MinY
        }
        return y
    }

    void SetUnitXEx(unit u, float x)
    {
        SetUnit##X(u,CheckX(x))
    }

    void SetUnitYEx(unit u, float y)
    {
        SetUnit##Y(u,CheckY(y))
    }

    void SetUnitPositionEx(unit u, float x, float y)
    {
        SetUnit##Position(u,CheckX(x),CheckY(y))
    }

    void SetUnitXY(unit u, float x, float y)
    {
        SetUnitX(u,x)
        SetUnitY(u,y)
    }
}
Координаты указываются вручную, т.к. в некоторых случаях функции возврата координат ректов могут возвращать малость неверные значения. предположительно это баг из за увеличения размера карты выше стандартного максимума.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
30
12 лет назад
2
Я бы, будучи таким великим гениальным кодером, как ты, постеснялся бы выкладывать подобные "новинки" и "труъ-наработки"
1
24
12 лет назад
1
Clamp, я не страдаю комплексом неполноценности и не стараюсь кому то что то доказывать :nate:
0
15
11 лет назад
0
Faion, таак а что еще что?????
и еще вот не пойму ресурс же не публичный, откуда левые комменты?
0
24
11 лет назад
0
SLI,
таак а что еще что?????
Либа для безопасного использования SetUnitX\Y
>и еще вот не пойму ресурс же не публичный, откуда левые комменты?
Да фаны покоя не дают :\
как нить над выложить полную версию этой либы
Чтобы оставить комментарий, пожалуйста, войдите на сайт.