amxmodx
compiler
configs
dlls
editor
installer
plugins
BinLogReader
amxmod_compat
cstrike
dod
esf
include
amxmod_compat
amxconst.inc
amxmisc.inc
amxmodx.inc
cellarray.inc
celltrie.inc
core.inc
csstats.inc
cstrike.inc
csx.inc
dbi.inc
dodconst.inc
dodfun.inc
dodstats.inc
dodx.inc
engine.inc
engine_const.inc
engine_stocks.inc
esf.inc
esf_const.inc
fakemeta.inc
fakemeta_const.inc
fakemeta_stocks.inc
fakemeta_util.inc
file.inc
float.inc
fun.inc
geoip.inc
ham_const.inc
hamsandwich.inc
hlsdk_const.inc
lang.inc
message_const.inc
message_stocks.inc
messages.inc
newmenus.inc
ns.inc
ns2amx.inc
ns_const.inc
nvault.inc
regex.inc
sockets.inc
sorting.inc
sqlx.inc
string.inc
svn_version.inc
svn_version.tpl
tfcconst.inc
tfcstats.inc
tfcx.inc
time.inc
tsconst.inc
tsfun.inc
tsstats.inc
tsx.inc
vault.inc
vector.inc
xs.inc
lang
ns
testsuite
tfc
ts
admin.sma
adminchat.sma
admincmd.sma
adminhelp.sma
adminslots.sma
adminvote.sma
amxxpc
amxxpc.exe
amxxpc32.dll
amxxpc32.so
amxxpc64.dll
amxxpc64.so
antiflood.sma
cmdmenu.sma
compile.exe
compile.sh
dlsym
dlsym.c
dlsym64
imessage.sma
mapchooser.sma
mapsmenu.sma
menufront.sma
multilingual.sma
nextmap.sma
pausecfg.sma
plmenu.sma
pluginmenu.sma
sasm
sasm.exe
scrollmsg.sma
statscfg.sma
telemenu.sma
timeleft.sma
modules.versions
versionchanger.pl
60 lines
1.6 KiB
PHP
60 lines
1.6 KiB
PHP
/* Vector functions (now part of Core)
|
|
*
|
|
* by the AMX Mod X Development Team
|
|
*
|
|
* This file is provided as is (no warranties).
|
|
*/
|
|
|
|
#if defined _corevector_included
|
|
#endinput
|
|
#endif
|
|
#define _corevector_included
|
|
|
|
/* Used for angle_vector() */
|
|
#define ANGLEVECTOR_FORWARD 1
|
|
#define ANGLEVECTOR_RIGHT 2
|
|
#define ANGLEVECTOR_UP 3
|
|
|
|
/* Returns distance between two vectors. */
|
|
native get_distance(const origin1[3], const origin2[3]);
|
|
|
|
/* Gets distance between two origins (float). */
|
|
native Float:get_distance_f(const Float:Origin1[3], const Float:Origin2[3]);
|
|
|
|
/* Gives you a velocity in the direction a player is looking, iVelocity is the multiplier. */
|
|
native velocity_by_aim(iIndex, iVelocity, Float:vRetValue[3]);
|
|
|
|
/* Changes a vector into an angle vector. */
|
|
native vector_to_angle(const Float:fVector[3], Float:vReturn[3]);
|
|
|
|
/* Changes an angle vector into a vector. */
|
|
native angle_vector(const Float:vector[3], FRU, Float:ret[3]);
|
|
|
|
/* Gets the length of a vector (float[3]). */
|
|
native Float:vector_length(const Float:vVector[3]);
|
|
|
|
/* Gets the distance between 2 vectors (float[3]). */
|
|
native Float:vector_distance(const Float:vVector[3], const Float:vVector2[3]);
|
|
|
|
/* Changes an integer vec to a floating vec
|
|
* This is not a for loop because that's slower
|
|
*/
|
|
stock IVecFVec(const IVec[3], Float:FVec[3])
|
|
{
|
|
FVec[0] = float(IVec[0]);
|
|
FVec[1] = float(IVec[1]);
|
|
FVec[2] = float(IVec[2]);
|
|
|
|
return 1;
|
|
}
|
|
|
|
/* Changes a float vec to an integer vec */
|
|
stock FVecIVec(const Float:FVec[3], IVec[3])
|
|
{
|
|
IVec[0] = floatround(FVec[0]);
|
|
IVec[1] = floatround(FVec[1]);
|
|
IVec[2] = floatround(FVec[2]);
|
|
|
|
return 1;
|
|
}
|