имея gangzone center и радиус необходимого прямоугольника возможно ли вычислить координаты минимума и максимума ?PHP код:
MinY
v
MinX > *-------------
| |
| gangzone |
| center |
| |
-------------* < MaxX
^
MaxY
если да, то по какой формуле ;)
имея gangzone center и радиус необходимого прямоугольника возможно ли вычислить координаты минимума и максимума ?PHP код:
MinY
v
MinX > *-------------
| |
| gangzone |
| center |
| |
-------------* < MaxX
^
MaxY
если да, то по какой формуле ;)
прямоугольника наврятли, а квадрата вроде бы можно как то...
[Anticheat]___Invisible Fly Hack
[Anticheat]____Weapon/Ammo Hack
[Function]______ResetPlayerWeaponSlot
[Function]_______FIX_SetPlayerAmmo
[ServerMod]______TDM | Zombie Apokalypse
учитесь пользоваться всеми функциями стримера.PHP код:
new AreaID;
AreaID = CreateDynamicRectangle(minx,miny,maxx,maxy,-1,-1,-1);
IsPlayerInDynamicArea(playerid, AreaID);
MyProject:
DriftEmpire©
Ленивые всё делают быстро, чтобы поскорее избавиться от работы.
И делают качественно, чтобы потом не переделывать.
[Anticheat]___Invisible Fly Hack
[Anticheat]____Weapon/Ammo Hack
[Function]______ResetPlayerWeaponSlot
[Function]_______FIX_SetPlayerAmmo
[ServerMod]______TDM | Zombie Apokalypse
Зная длину и ширину можно вычислить таким образом.PHP код:
/*
maxY
v a
maxX > *-------------
| |
| gangzone |
b | center |
| |
-------------* < minX
^
minY
*/
main()
{
new
Float: centerX = 0.0,
Float: centerY = 0.0 ;
new
Float: a = 50.0,
Float: b = 27.0 ;
new
Float: minX = centerX - ( a / 2 ),
Float: minY = centerY - ( b / 2 ),
Float: maxX = centerX + ( a / 2 ),
Float: maxY = centerY + ( b / 2 ) ;
printf( "(%f, %f)\n(%f, %f)", minX, minY, maxX, maxY );
}
a и b это длина и ширина
Batya_Montes (18.05.2017)
[Anticheat]___Invisible Fly Hack
[Anticheat]____Weapon/Ammo Hack
[Function]______ResetPlayerWeaponSlot
[Function]_______FIX_SetPlayerAmmo
[ServerMod]______TDM | Zombie Apokalypse
Элементарно же.
Вот готовая функция:
Ну и заодно обратна функция, которая узнаёт центр:PHP код:
GetBoundsOfGangZone(Float:cx, Float:cy, Float:width, Float:height, &Float:x1, &Float:y1, &Float:x2, &Float:y2)
{
x1 = cx - (width / 2.0);
x2 = cx + (width / 2.0);
y1 = cy - (height / 2.0);
y2 = cy + (height / 2.0);
}
PHP код:
GetCenterOfGangZone(Float:MinX, Float:MinY, Float:MaxX, Float:MaxY, &Float:X, &Float:Y)
{
X = (MinX + MaxX) / 2;
Y = (MinY + MaxY) / 2;
}
Последний раз редактировалось Nexius_Tailer; 18.05.2017 в 11:11.
Не хотите постоянно проверять обновления моих скриптов?
Подключите его последним, после всех остальных
Nexius's Update Checker
Batya_Montes (18.05.2017)
Всем спасибо, выручили.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)