Updated TLK for PRC8 update

Updated TLK for PRC8 update.  Added placeable house blueprints.  Updated NWNxEE.  Full compile.
This commit is contained in:
Jaysyn904
2024-08-31 20:38:17 -04:00
parent 8a5d80a2ea
commit 37b68cf6b6
1458 changed files with 27093 additions and 4211 deletions

View File

@@ -50,6 +50,15 @@ struct NWNX_Area_TileInfo
int nGridY; ///< The tile's grid y position
};
/// @brief Area wind info struct
struct NWNX_Area_AreaWind
{
vector vDirection; ///< Wind's direction
float fMagnitude; ///< Wind's magnitude
float fYaw; ///< Wind's yaw
float fPitch; ///< Wind's pitch
};
/// @brief Gets the number of players in area.
/// @param area The area object.
/// @return The player count for the area.
@@ -268,54 +277,126 @@ struct NWNX_Area_TileInfo NWNX_Area_GetTileInfo(object oArea, float fTileX, floa
/// @return TRUE if exported successfully, FALSE if not.
int NWNX_Area_ExportARE(object oArea, string sFileName, string sNewName = "", string sNewTag = "", string sAlias = "NWNX");
/// @brief Get the ambient sound playing in an area during the day.
/// @param oArea The area to get the sound of.
/// @return The ambient soundtrack. See ambientsound.2da.
int NWNX_Area_GetAmbientSoundDay(object oArea);
/// @brief Get the ambient sound playing in an area during the night.
/// @param oArea The area to get the sound of.
/// @return The ambient soundtrack. See ambientsound.2da.
int NWNX_Area_GetAmbientSoundNight(object oArea);
/// @brief Get the volume of the ambient sound playing in an area during the day.
/// @param oArea The area to get the sound volume of.
/// @return The volume.
int NWNX_Area_GetAmbientSoundDayVolume(object oArea);
/// @brief Get the volume of the ambient sound playing in an area during the night.
/// @param oArea The area to get the sound volume of.
/// @return The volume.
int NWNX_Area_GetAmbientSoundNightVolume(object oArea);
/// @brief Create a sound object.
/// @param oArea The area where to create the sound object.
/// @param vPosition The area position where to create the sound object.
/// @param sResRef The ResRef of the sound object.
/// @return The sound object.
object NWNX_Area_CreateSoundObject(object oArea, vector vPosition, string sResRef);
/// @brief Rotates an existing area, including all objects within (excluding PCs).
/// @note Functions while clients are in the area, but not recommended as tiles/walkmesh only updates on area load, and this may result in unexpected clientside results.
/// @param oArea The area to be rotated
/// @param nRotation How many 90 degrees clockwise to rotate (1-3).
void NWNX_Area_RotateArea(object oArea, int nRotation);
/// @brief Get the tile info of the tile at nIndex in the tile array.
/// @param oArea The area.
/// @param nIndex The index of the tile.
/// @return A NWNX_Area_TileInfo struct with tile info.
struct NWNX_Area_TileInfo NWNX_Area_GetTileInfoByTileIndex(object oArea, int nIndex);
/// @brief Check if there is a path between two positions in an area.
/// @note Does not care about doors or placeables, only checks tile path nodes.
/// @param oArea The area.
/// @param vStartPosition The start position.
/// @param vEndPosition The end position.
/// @param nMaxDepth The max depth of the DFS tree. A good value is AreaWidth * AreaHeight.
/// @return TRUE if there is a path between vStartPosition and vEndPosition, FALSE if not or on error.
int NWNX_Area_GetPathExists(object oArea, vector vStartPosition, vector vEndPosition, int nMaxDepth);
/// @brief Get oArea's flags, interior/underground etc.
/// @param oArea The area.
/// @return The raw flags bitmask or -1 on error.
int NWNX_Area_GetAreaFlags(object oArea);
/// @brief Set oArea's raw flags bitmask.
/// @note You'll have to do any bitwise operations yourself.
/// @note Requires clients to reload the area to get any updated flags.
/// @param oArea The area.
/// @param nFlags The flags.
void NWNX_Area_SetAreaFlags(object oArea, int nFlags);
/// @brief Get oArea's detailed win data.
/// @note vDirection returns [0.0, 0.0, 0.0] if not set previously with SetAreaWind nwscript function.
/// @param oArea The area.
struct NWNX_Area_AreaWind NWNX_Area_GetAreaWind(object oArea);
/// @brief Set the default discoverability mask for objects in an area.
/// @param oArea The area or OBJECT_INVALID to set a global mask for all areas. Per area masks will override the global mask.
/// @param nObjectTypes A mask of OBJECT_TYPE_* constants or OBJECT_TYPE_ALL for all suitable object types. Currently only works on Creatures, Doors (Hilite only), Items and Useable Placeables.
/// @param nMask A mask of OBJECT_UI_DISCOVERY_*
/// @param bForceUpdate If TRUE, will update the discovery mask of ALL objects in the area or module(if oArea == OBJECT_INVALID), according to the current mask. Use with care.
void NWNX_Area_SetDefaultObjectUiDiscoveryMask(object oArea, int nObjectTypes, int nMask, int bForceUpdate = FALSE);
/// @}
int NWNX_Area_GetNumberOfPlayersInArea(object area)
{
string sFunc = "GetNumberOfPlayersInArea";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
object NWNX_Area_GetLastEntered(object area)
{
string sFunc = "GetLastEntered";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject();
}
object NWNX_Area_GetLastLeft(object area)
{
string sFunc = "GetLastLeft";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject();
}
int NWNX_Area_GetPVPSetting(object area)
{
string sFunc = "GetPVPSetting";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetPVPSetting(object area, int pvpSetting)
{
string sFunc = "SetPVPSetting";
NWNX_PushArgumentInt(NWNX_Area, sFunc, pvpSetting);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(pvpSetting);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -323,18 +404,18 @@ int NWNX_Area_GetAreaSpotModifier(object area)
{
string sFunc = "GetAreaSpotModifier";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetAreaSpotModifier(object area, int spotModifier)
{
string sFunc = "SetAreaSpotModifier";
NWNX_PushArgumentInt(NWNX_Area, sFunc, spotModifier);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(spotModifier);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -342,18 +423,18 @@ int NWNX_Area_GetAreaListenModifier(object area)
{
string sFunc = "GetAreaListenModifier";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetAreaListenModifier(object area, int listenModifier)
{
string sFunc = "SetAreaListenModifier";
NWNX_PushArgumentInt(NWNX_Area, sFunc, listenModifier);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(listenModifier);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -361,18 +442,18 @@ int NWNX_Area_GetNoRestingAllowed(object area)
{
string sFunc = "GetNoRestingAllowed";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetNoRestingAllowed(object area, int bNoRestingAllowed)
{
string sFunc = "SetNoRestingAllowed";
NWNX_PushArgumentInt(NWNX_Area, sFunc, bNoRestingAllowed);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(bNoRestingAllowed);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -380,18 +461,18 @@ int NWNX_Area_GetWindPower(object area)
{
string sFunc = "GetWindPower";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetWindPower(object area, int windPower)
{
string sFunc = "SetWindPower";
NWNX_PushArgumentInt(NWNX_Area, sFunc, windPower);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(windPower);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -399,20 +480,20 @@ int NWNX_Area_GetWeatherChance(object area, int type)
{
string sFunc = "GetWeatherChance";
NWNX_PushArgumentInt(NWNX_Area, sFunc, type);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(type);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetWeatherChance(object area, int type, int chance)
{
string sFunc = "SetWeatherChance";
NWNX_PushArgumentInt(NWNX_Area, sFunc, chance);
NWNX_PushArgumentInt(NWNX_Area, sFunc, type);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(chance);
NWNX_PushArgumentInt(type);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -420,18 +501,18 @@ float NWNX_Area_GetFogClipDistance(object area)
{
string sFunc = "GetFogClipDistance";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueFloat(NWNX_Area, sFunc);
return NWNX_GetReturnValueFloat();
}
void NWNX_Area_SetFogClipDistance(object area, float distance)
{
string sFunc = "SetFogClipDistance";
NWNX_PushArgumentFloat(NWNX_Area, sFunc, distance);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentFloat(distance);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -439,18 +520,18 @@ int NWNX_Area_GetShadowOpacity(object area)
{
string sFunc = "GetShadowOpacity";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetShadowOpacity(object area, int shadowOpacity)
{
string sFunc = "SetShadowOpacity";
NWNX_PushArgumentInt(NWNX_Area, sFunc, shadowOpacity);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(shadowOpacity);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -459,18 +540,18 @@ int NWNX_Area_GetDayNightCycle(object area)
{
string sFunc = "GetDayNightCycle";
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetDayNightCycle(object area, int type)
{
string sFunc = "SetDayNightCycle";
NWNX_PushArgumentInt(NWNX_Area, sFunc, type);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(type);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -478,20 +559,20 @@ int NWNX_Area_GetSunMoonColors(object area, int type)
{
string sFunc = "GetSunMoonColors";
NWNX_PushArgumentInt(NWNX_Area, sFunc, type);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(type);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetSunMoonColors(object area, int type, int color)
{
string sFunc = "SetSunMoonColors";
NWNX_PushArgumentInt(NWNX_Area, sFunc, color);
NWNX_PushArgumentInt(NWNX_Area, sFunc, type);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentInt(color);
NWNX_PushArgumentInt(type);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -499,41 +580,41 @@ object NWNX_Area_CreateTransition(object area, object target, float x, float y,
{
string sFunc = "CreateTransition";
NWNX_PushArgumentString(NWNX_Area, sFunc, tag);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, size);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, z);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, y);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, x);
NWNX_PushArgumentObject(NWNX_Area, sFunc, target);
NWNX_PushArgumentObject(NWNX_Area, sFunc, area);
NWNX_PushArgumentString(tag);
NWNX_PushArgumentFloat(size);
NWNX_PushArgumentFloat(z);
NWNX_PushArgumentFloat(y);
NWNX_PushArgumentFloat(x);
NWNX_PushArgumentObject(target);
NWNX_PushArgumentObject(area);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject();
}
int NWNX_Area_GetTileAnimationLoop(object oArea, float fTileX, float fTileY, int nAnimLoop)
{
string sFunc = "GetTileAnimationLoop";
NWNX_PushArgumentInt(NWNX_Area, sFunc, nAnimLoop);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileX);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentInt(nAnimLoop);
NWNX_PushArgumentFloat(fTileY);
NWNX_PushArgumentFloat(fTileX);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetTileAnimationLoop(object oArea, float fTileX, float fTileY, int nAnimLoop, int bEnabled)
{
string sFunc = "SetTileAnimationLoop";
NWNX_PushArgumentInt(NWNX_Area, sFunc, bEnabled);
NWNX_PushArgumentInt(NWNX_Area, sFunc, nAnimLoop);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileX);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentInt(bEnabled);
NWNX_PushArgumentInt(nAnimLoop);
NWNX_PushArgumentFloat(fTileY);
NWNX_PushArgumentFloat(fTileX);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -541,64 +622,64 @@ void NWNX_Area_SetTileAnimationLoop(object oArea, float fTileX, float fTileY, in
string NWNX_Area_GetTileModelResRef(object oArea, float fTileX, float fTileY)
{
string sFunc = "GetTileModelResRef";
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileX);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentFloat(fTileY);
NWNX_PushArgumentFloat(fTileX);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueString(NWNX_Area, sFunc);
return NWNX_GetReturnValueString();
}
int NWNX_Area_TestDirectLine(object oArea, float fStartX, float fStartY, float fEndX, float fEndY, float fPerSpace, float fHeight, int bIgnoreDoors=FALSE)
{
string sFunc = "TestDirectLine";
NWNX_PushArgumentInt(NWNX_Area, sFunc, bIgnoreDoors);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fHeight);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fPerSpace);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fEndY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fEndX);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fStartY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fStartX);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentInt(bIgnoreDoors);
NWNX_PushArgumentFloat(fHeight);
NWNX_PushArgumentFloat(fPerSpace);
NWNX_PushArgumentFloat(fEndY);
NWNX_PushArgumentFloat(fEndX);
NWNX_PushArgumentFloat(fStartY);
NWNX_PushArgumentFloat(fStartX);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
int NWNX_Area_GetMusicIsPlaying(object oArea, int bBattleMusic = FALSE)
{
string sFunc = "GetMusicIsPlaying";
NWNX_PushArgumentInt(NWNX_Area, sFunc, bBattleMusic);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentInt(bBattleMusic);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
object NWNX_Area_CreateGenericTrigger(object oArea, float fX, float fY, float fZ, string sTag = "", float fSize = 1.0f)
{
string sFunc = "CreateGenericTrigger";
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fSize);
NWNX_PushArgumentString(NWNX_Area, sFunc, sTag);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fZ);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fX);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentFloat(fSize);
NWNX_PushArgumentString(sTag);
NWNX_PushArgumentFloat(fZ);
NWNX_PushArgumentFloat(fY);
NWNX_PushArgumentFloat(fX);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject();
}
void NWNX_Area_AddObjectToExclusionList(object oObject)
{
string sFunc = "AddObjectToExclusionList";
NWNX_PushArgumentObject(NWNX_Area, sFunc, oObject);
NWNX_PushArgumentObject(oObject);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -606,7 +687,7 @@ void NWNX_Area_RemoveObjectFromExclusionList(object oObject)
{
string sFunc = "RemoveObjectFromExclusionList";
NWNX_PushArgumentObject(NWNX_Area, sFunc, oObject);
NWNX_PushArgumentObject(oObject);
NWNX_CallFunction(NWNX_Area, sFunc);
}
@@ -614,33 +695,33 @@ int NWNX_Area_ExportGIT(object oArea, string sFileName = "", int bExportVarTable
{
string sFunc = "ExportGIT";
NWNX_PushArgumentString(NWNX_Area, sFunc, sAlias);
NWNX_PushArgumentInt(NWNX_Area, sFunc, nObjectFilter);
NWNX_PushArgumentInt(NWNX_Area, sFunc, bExportUUID);
NWNX_PushArgumentInt(NWNX_Area, sFunc, bExportVarTable);
NWNX_PushArgumentString(NWNX_Area, sFunc, sFileName);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentString(sAlias);
NWNX_PushArgumentInt(nObjectFilter);
NWNX_PushArgumentInt(bExportUUID);
NWNX_PushArgumentInt(bExportVarTable);
NWNX_PushArgumentString(sFileName);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
struct NWNX_Area_TileInfo NWNX_Area_GetTileInfo(object oArea, float fTileX, float fTileY)
{
string sFunc = "GetTileInfo";
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileY);
NWNX_PushArgumentFloat(NWNX_Area, sFunc, fTileX);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentFloat(fTileY);
NWNX_PushArgumentFloat(fTileX);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
struct NWNX_Area_TileInfo str;
str.nGridY = NWNX_GetReturnValueInt(NWNX_Area, sFunc);
str.nGridX = NWNX_GetReturnValueInt(NWNX_Area, sFunc);
str.nOrientation = NWNX_GetReturnValueInt(NWNX_Area, sFunc);
str.nHeight = NWNX_GetReturnValueInt(NWNX_Area, sFunc);
str.nID = NWNX_GetReturnValueInt(NWNX_Area, sFunc);
str.nGridY = NWNX_GetReturnValueInt();
str.nGridX = NWNX_GetReturnValueInt();
str.nOrientation = NWNX_GetReturnValueInt();
str.nHeight = NWNX_GetReturnValueInt();
str.nID = NWNX_GetReturnValueInt();
return str;
}
@@ -649,12 +730,159 @@ int NWNX_Area_ExportARE(object oArea, string sFileName, string sNewName = "", st
{
string sFunc = "ExportARE";
NWNX_PushArgumentString(NWNX_Area, sFunc, sAlias);
NWNX_PushArgumentString(NWNX_Area, sFunc, sNewTag);
NWNX_PushArgumentString(NWNX_Area, sFunc, sNewName);
NWNX_PushArgumentString(NWNX_Area, sFunc, sFileName);
NWNX_PushArgumentObject(NWNX_Area, sFunc, oArea);
NWNX_PushArgumentString(sAlias);
NWNX_PushArgumentString(sNewTag);
NWNX_PushArgumentString(sNewName);
NWNX_PushArgumentString(sFileName);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
int NWNX_Area_GetAmbientSoundDay(object oArea)
{
string sFunc = "GetAmbientSoundDay";
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
int NWNX_Area_GetAmbientSoundNight(object oArea)
{
string sFunc = "GetAmbientSoundNight";
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
int NWNX_Area_GetAmbientSoundDayVolume(object oArea)
{
string sFunc = "GetAmbientSoundDayVolume";
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
int NWNX_Area_GetAmbientSoundNightVolume(object oArea)
{
string sFunc = "GetAmbientSoundNightVolume";
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
object NWNX_Area_CreateSoundObject(object oArea, vector vPosition, string sResRef)
{
string sFunc = "CreateSoundObject";
NWNX_PushArgumentString(sResRef);
NWNX_PushArgumentFloat(vPosition.z);
NWNX_PushArgumentFloat(vPosition.y);
NWNX_PushArgumentFloat(vPosition.x);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueObject();
}
void NWNX_Area_RotateArea(object oArea, int nRotation)
{
string sFunc = "RotateArea";
NWNX_PushArgumentInt(nRotation);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
}
struct NWNX_Area_TileInfo NWNX_Area_GetTileInfoByTileIndex(object oArea, int nIndex)
{
string sFunc = "GetTileInfoByTileIndex";
NWNX_PushArgumentInt(nIndex);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
struct NWNX_Area_TileInfo str;
str.nGridY = NWNX_GetReturnValueInt();
str.nGridX = NWNX_GetReturnValueInt();
str.nOrientation = NWNX_GetReturnValueInt();
str.nHeight = NWNX_GetReturnValueInt();
str.nID = NWNX_GetReturnValueInt();
return str;
}
int NWNX_Area_GetPathExists(object oArea, vector vStartPosition, vector vEndPosition, int nMaxDepth)
{
string sFunc = "GetPathExists";
NWNX_PushArgumentInt(nMaxDepth);
NWNX_PushArgumentFloat(vEndPosition.y);
NWNX_PushArgumentFloat(vEndPosition.x);
NWNX_PushArgumentFloat(vStartPosition.y);
NWNX_PushArgumentFloat(vStartPosition.x);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
int NWNX_Area_GetAreaFlags(object oArea)
{
string sFunc = "GetAreaFlags";
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
return NWNX_GetReturnValueInt();
}
void NWNX_Area_SetAreaFlags(object oArea, int nFlags)
{
string sFunc = "SetAreaFlags";
NWNX_PushArgumentInt(nFlags);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
}
struct NWNX_Area_AreaWind NWNX_Area_GetAreaWind(object oArea)
{
string sFunc = "GetAreaWind";
struct NWNX_Area_AreaWind data;
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
data.fPitch = NWNX_GetReturnValueFloat();
data.fYaw = NWNX_GetReturnValueFloat();
data.fMagnitude = NWNX_GetReturnValueFloat();
data.vDirection.x = NWNX_GetReturnValueFloat();
data.vDirection.y = NWNX_GetReturnValueFloat();
data.vDirection.z = NWNX_GetReturnValueFloat();
return data;
}
void NWNX_Area_SetDefaultObjectUiDiscoveryMask(object oArea, int nObjectTypes, int nMask, int bForceUpdate = FALSE)
{
string sFunc = "SetDefaultObjectUiDiscoveryMask";
NWNX_PushArgumentInt(bForceUpdate);
NWNX_PushArgumentInt(nMask);
NWNX_PushArgumentInt(nObjectTypes);
NWNX_PushArgumentObject(oArea);
NWNX_CallFunction(NWNX_Area, sFunc);
}