#ifndef _QUERIES_H_
#define _QUERIES_H_
#if !defined(ALLSRV_STANDALONE)
BEGIN_SQL_DEF(HKLM_FedSrv,&g.siteFedSrv)
DEF_STMT(ShipTypeIDs, "SELECT ShipTypeID FROM ShipTypes ORDER BY SortOrder")
SQL_INT2_PARM(ShipTypeIDs_ShipTypeID, SQL_OUT_PARM)
DEF_STMT(ShipTypes, "SELECT " FEDSTR(Description) ", " FEDSTR(Name) ", " FEDSTR(Model) ", " FEDSTR(PRIcon)
", Length, "
FEDNUM(SuccessorHullID) ", "
"Weight, Price, SecondsToBuild, GroupID, BaseMaxSpeed, BaseHitPoints, DefenseType, BaseScannerRange, "
"MaxRollRate, MaxPitchRate, MaxYawRate, DriftRoll, "
"DriftPitch, DriftYaw, Acceleration, AccelSideMultiplier, "
"AccelBackMultiplier, "
"ShieldPartMask, AfterburnerPartMask, CloakPartMask, MagazinePartMask, DispenserPartMask, ChaffPartMask,"
"MagazineCapacity, DispenserCapacity, ChaffCapacity, "
FEDNUM(PreferredPartID1) ", " FEDNUM(PreferredPartID2) ", " FEDNUM(PreferredPartID3) ", "
FEDNUM(PreferredPartID4) ", " FEDNUM(PreferredPartID5) ", " FEDNUM(PreferredPartID6) ", "
FEDNUM(PreferredPartID7) ", " FEDNUM(PreferredPartID8) ", " FEDNUM(PreferredPartID9) ", "
FEDNUM(PreferredPartID10) ", " FEDNUM(PreferredPartID11) ", " FEDNUM(PreferredPartID12) ", "
FEDNUM(PreferredPartID13) ", " FEDNUM(PreferredPartID14) ", "
"EnergyMax, RateRechargeEnergy, "
"BaseSignature, RTRIM(TechBitsRequired), RTRIM(TechBitsEffect), Capabilities, MaxAmmo, MaxFuel, "
"InteriorSound, ExteriorSound, ThrustInteriorSound, ThrustExteriorSound, "
"TurnInteriorSound, TurnExteriorSound, RipcordSpeed, ecm, RipcordCost "
"FROM ShipTypes WHERE ShipTypeID=? ORDER BY SortOrder")
SQL_STR_PARM( ShipTypes_Description, c_cbDescriptionDB, SQL_OUT_PARM)
SQL_STR_PARM( ShipTypes_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_STR_PARM( ShipTypes_ShipModelName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( ShipTypes_ShipIconName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flLength, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_SuccessorID, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flWeight, SQL_OUT_PARM)
SQL_INT4_PARM(ShipTypes_Price, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_TimeToBuild, SQL_OUT_PARM)
SQL_INT1_PARM(ShipTypes_GroupID, SQL_OUT_PARM)
SQL_INT4_PARM(ShipTypes_SpeedMax, SQL_OUT_PARM)
SQL_INT4_PARM(ShipTypes_HitPoints, SQL_OUT_PARM)
SQL_INT1_PARM(ShipTypes_DefenseType, SQL_OUT_PARM)
SQL_INT4_PARM(ShipTypes_RangeScanner, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flRateRoll, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flRatePitch, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flRateYaw, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flDriftRoll, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flDriftPitch, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flDriftYaw, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flAcceleration, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flAccelSideMult, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_flAccelBackMult, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ShieldPartMask, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_AfterburnerPartMask, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_CloakPartMask, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_MagazinePartMask, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_DispenserPartMask, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ChaffPartMask, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_MagazineCapacity, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_DispenserCapacity, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ChaffCapacity, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart1, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart2, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart3, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart4, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart5, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart6, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart7, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart8, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart9, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart10, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart11, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart12, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart13, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_PreferredPart14, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_EnergyMax, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_RateRechargeEnergy, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_BaseSignature, SQL_OUT_PARM)
SQL_STR_PARM( ShipTypes_TechBitsReqd, CbTechBits, SQL_OUT_PARM)
SQL_STR_PARM( ShipTypes_TechBitsEffect, CbTechBits, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_Capabilities, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_MaxAmmo, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_MaxFuel, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_InteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ExteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ThrustInteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ThrustExteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_TurnInteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_TurnExteriorSound, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_ripcordSpeed, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_ecm, SQL_OUT_PARM)
SQL_FLT4_PARM(ShipTypes_ripcordCost, SQL_OUT_PARM)
SQL_INT2_PARM(ShipTypes_ShipTypeID, SQL_IN_PARM)
DEF_STMT(MapsCount, "SELECT COUNT(*) FROM Maps")
SQL_INT4_PARM(g_cMapsCount, SQL_OUT_PARM)
DEF_STMT(MapIDs, "SELECT MapID, " FEDSTR(FileName) " FROM Maps")
SQL_INT2_PARM(MapIDs_MapID, SQL_OUT_PARM)
SQL_STR_PARM( MapIDs_FileName, c_cbFileNameDB, SQL_OUT_PARM)
DEF_STMT(AlephsCount, "SELECT COUNT(*) FROM AlephInstances")
SQL_INT4_PARM(g_cAlephs, SQL_OUT_PARM)
DEF_STMT(Alephs,
"SELECT "
"AlephID, SectorID, TargetAlephID, "
"LocationX, LocationY, LocationZ, "
"RotationR, "
"ForwardX, ForwardY, ForwardZ, "
"Radius, Signature, "
FEDSTR(Texture) ", " FEDSTR(PRIcon) " "
"FROM AlephInstances "
"WHERE MapID = ?"
)
SQL_INT4_PARM(AlephInst_ID, SQL_OUT_PARM)
SQL_INT2_PARM(AlephInst_SectorID, SQL_OUT_PARM)
SQL_INT4_PARM(AlephInst_TargetAlephID, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_xLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_yLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_zLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_rRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_xForward, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_yForward, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_zForward, SQL_OUT_PARM)
SQL_INT2_PARM(AlephInst_Radius, SQL_OUT_PARM)
SQL_FLT4_PARM(AlephInst_Signature, SQL_OUT_PARM)
SQL_STR_PARM( AlephInst_Texture, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( AlephInst_PRIcon, c_cbFileNameDB, SQL_OUT_PARM)
SQL_INT2_PARM(AlephInst_MapID, SQL_IN_PARM)
DEF_STMT(Asteroids, "SELECT "
"SectorID, AsteroidID, "
"Ore, AbilitiesMask, HitPoints, "
"Radius, Signature, "
"LocationX, LocationY, LocationZ, "
FEDNUM(ForwardX) ", " FEDNUM(ForwardY) ", " FEDNUM(ForwardZ) ", "
FEDNUM(UpX) ", " FEDNUM(UpY) ", " FEDNUM(UpZ) ", "
FEDNUM(RotationAx) ", " FEDNUM(RotationAy) ", " FEDNUM(RotationAz) ", " FEDNUM(RotationR) ", "
FEDSTR(FileModel) ", " FEDSTR(FileTexture) ", " FEDSTR(FileIcon) ", "
FEDSTR(Name) " "
"FROM Asteroids "
"WHERE MapID = ?"
)
SQL_INT2_PARM(Asteroids_ClusterID, SQL_OUT_PARM)
SQL_INT2_PARM(Asteroids_AsteroidID, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_Ore, SQL_OUT_PARM)
SQL_INT2_PARM(Asteroids_Abilities, SQL_OUT_PARM)
SQL_INT2_PARM(Asteroids_HitPoints, SQL_OUT_PARM)
SQL_INT2_PARM(Asteroids_Radius, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_Signature, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_x, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_y, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_z, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_xForward, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_yForward, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_zForward, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_xUp, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_yUp, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_zUp, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_xRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_yRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_zRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(Asteroids_rRotation, SQL_OUT_PARM)
SQL_STR_PARM( Asteroids_Model, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Asteroids_Texture, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Asteroids_PRIcon, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Asteroids_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_INT2_PARM(Asteroids_MapID, SQL_IN_PARM)
DEF_STMT(SectorInfo, "SELECT "
"SectorID, " FEDSTR(SectorName) ", "
"LightX, LightY, LightZ, LightColor, "
"StarsCount, DebrisCount, starSeed, "
"ScreenX, ScreenY, "
FEDSTR(PosterFile) ", " FEDSTR(PlanetFile) ", "
"PlanetSinLatitude, PlanetLongitude, PlanetRadius, "
"IsHomeSector "
"FROM SectorInfo "
"WHERE MapID = ?"
)
SQL_INT2_PARM(SectorInfo_SectorID, SQL_OUT_PARM)
SQL_STR_PARM( SectorInfo_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_FLT4_PARM(SectorInfo_LightX, SQL_OUT_PARM)
SQL_FLT4_PARM(SectorInfo_LightY, SQL_OUT_PARM)
SQL_FLT4_PARM(SectorInfo_LightZ, SQL_OUT_PARM)
SQL_INT4_PARM(SectorInfo_LightColor, SQL_OUT_PARM)
SQL_INT2_PARM(SectorInfo_StarsCount, SQL_OUT_PARM)
SQL_INT2_PARM(SectorInfo_DebrisCount, SQL_OUT_PARM)
SQL_INT4_PARM(SectorInfo_starSeed, SQL_OUT_PARM)
SQL_FLT4_PARM(SectorInfo_ScreenX, SQL_OUT_PARM)
SQL_FLT4_PARM(SectorInfo_ScreenY, SQL_OUT_PARM)
SQL_STR_PARM( SectorInfo_PosterName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( SectorInfo_PlanetName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_INT1_PARM(SectorInfo_planetSinLatitude, SQL_OUT_PARM)
SQL_INT1_PARM(SectorInfo_planetLongitude, SQL_OUT_PARM)
SQL_INT1_PARM(SectorInfo_planetRadius, SQL_OUT_PARM)
SQL_INT1_PARM(SectorInfo_IsHomeSector, SQL_OUT_PARM)
SQL_INT2_PARM(SectorInfo_MapID, SQL_IN_PARM)
DEF_STMT(StationInstance, "SELECT "
"StationID, " FEDSTR(Name) ", "
"SideID, SectorID, "
"LocationX, LocationY, LocationZ, "
"RotationAx, RotationAy, RotationAz, RotationR, "
"ForwardX, ForwardY, ForwardZ, "
"UpX, UpY, UpZ, "
"StationTypeID "
"FROM StationInstances "
"WHERE MapID = ?"
)
SQL_INT2_PARM(StationInstance_StationID, SQL_OUT_PARM)
SQL_STR_PARM( StationInstance_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_INT1_PARM(StationInstance_SideID, SQL_OUT_PARM)
SQL_INT2_PARM(StationInstance_SectorID, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_xLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_yLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_zLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_xRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_yRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_zRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_rRotation, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_xForward, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_yForward, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_zForward, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_xUp, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_yUp, SQL_OUT_PARM)
SQL_FLT4_PARM(StationInstance_zUp, SQL_OUT_PARM)
SQL_INT2_PARM(StationInstance_StationTypeID, SQL_OUT_PARM)
SQL_INT2_PARM(StationInstance_MapID, SQL_IN_PARM)
DEF_STMT(ProbeInstance, "SELECT "
"ProbeID, "
"ProbeTypeID, "
"SideID, SectorID, "
"LocationX, LocationY, LocationZ "
"FROM ProbeInstances "
"WHERE MapID = ?"
)
SQL_INT2_PARM(ProbeInstance_ProbeID, SQL_OUT_PARM)
SQL_INT2_PARM(ProbeInstance_ProbeTypeID, SQL_OUT_PARM)
SQL_INT1_PARM(ProbeInstance_SideID, SQL_OUT_PARM)
SQL_INT2_PARM(ProbeInstance_SectorID, SQL_OUT_PARM)
SQL_FLT4_PARM(ProbeInstance_xLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(ProbeInstance_yLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(ProbeInstance_zLocation, SQL_OUT_PARM)
SQL_INT2_PARM(ProbeInstance_MapID, SQL_IN_PARM)
DEF_STMT(MineInstance, "SELECT "
"MineID, "
"MineTypeID, "
"SideID, SectorID, "
"LocationX, LocationY, LocationZ "
"FROM MineInstances "
"WHERE MapID = ?"
)
SQL_INT2_PARM(MineInstance_MineID, SQL_OUT_PARM)
SQL_INT2_PARM(MineInstance_MineTypeID, SQL_OUT_PARM)
SQL_INT1_PARM(MineInstance_SideID, SQL_OUT_PARM)
SQL_INT2_PARM(MineInstance_SectorID, SQL_OUT_PARM)
SQL_FLT4_PARM(MineInstance_xLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(MineInstance_yLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(MineInstance_zLocation, SQL_OUT_PARM)
SQL_INT2_PARM(MineInstance_MapID, SQL_IN_PARM)
DEF_STMT(TreasureInstance, "SELECT "
"Lifespan, "
"TreasureID, "
"LocationX, LocationY, LocationZ, "
"SectorID, "
"Amount, TreasureCode "
"FROM TreasureInstances "
"WHERE MapID = ?"
)
SQL_FLT4_PARM(TreasureInstance_Lifespan, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureInstance_TreasureID, SQL_OUT_PARM)
SQL_FLT4_PARM(TreasureInstance_xLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(TreasureInstance_yLocation, SQL_OUT_PARM)
SQL_FLT4_PARM(TreasureInstance_zLocation, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureInstance_SectorID, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureInstance_Amount, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureInstance_TreasureCode, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureInstance_MapID, SQL_IN_PARM)
DEF_STMT(ShipsCount, "SELECT MAX(ShipTypeID) + 1 FROM ShipTypes")
SQL_INT4_PARM(g_cShipTypes, SQL_OUT_PARM)
DEF_STMT(PostersCount,
"SELECT COUNT(*) FROM PosterInstances")
SQL_INT4_PARM(g_cPosters, SQL_OUT_PARM)
DEF_STMT(AttachPointsCount, "SELECT COUNT(*) FROM AttachPoints WHERE ShipTypeID=?")
SQL_INT4_PARM(g_cAttachPoints, SQL_OUT_PARM)
SQL_INT2_PARM(AttachPointsCount_ShipTypeID, SQL_IN_PARM)
DEF_STMT(EffectsCount, "SELECT Count(*) FROM Effects")
SQL_INT4_PARM(g_cEffects, SQL_OUT_PARM)
DEF_STMT(AttachPoints, "SELECT ShipTypeID, AttachPointID, "
FEDSTR(FrameName) ", PartMask, "
"PartTypeID, InteriorSound, TurnSound, " FEDSTR(LocationAbreviation)
"FROM AttachPoints WHERE ShipTypeID=? ORDER BY PartTypeID")
SQL_INT2_PARM(AttachPoints_ShiptTypeID, SQL_OUT_PARM)
SQL_INT2_PARM(AttachPoints_AttachPointID, SQL_OUT_PARM)
SQL_STR_PARM( AttachPoints_FrameName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_INT2_PARM(AttachPoints_PartMask, SQL_OUT_PARM)
SQL_INT1_PARM(AttachPoints_PartTypeID, SQL_OUT_PARM)
SQL_INT2_PARM(AttachPoints_InteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(AttachPoints_TurnSound, SQL_OUT_PARM)
SQL_INT2_PARM(AttachPoints_ShipTypeID, SQL_IN_PARM)
SQL_STR_PARM( AttachPoints_LocationAbreviation, c_cbLocAbrevDB, SQL_OUT_PARM)
DEF_STMT(Projectiles, "SELECT ProjectileID, TimeDuration, "
"HitPointsInflict, DamageType, " FEDSTR(FileModel) ", "
FEDSTR(FileTexture) ", SpeedMax, Acceleration, "
"Size_cm, RadiusBlast_m, percentRed, percentGreen, percentBlue, percentAlpha, "
"PercentPenetration, RateRotation, IsAbsoluteSpeed, IsDirectional, IsExplodeOnExpire, "
"IsProximityFuse, BlastPower, BlastRadius, WidthOverHeight, AmbientSound "
"FROM Projectiles")
SQL_INT2_PARM(Projectiles_ProjectileID, SQL_OUT_PARM)
SQL_INT2_PARM(Projectiles_TimeDuration, SQL_OUT_PARM)
SQL_FLT4_PARM(Projectiles_HitPointsInflict, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_DamageType, SQL_OUT_PARM)
SQL_STR_PARM( Projectiles_FileModel, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Projectiles_FileTexture, c_cbFileNameDB, SQL_OUT_PARM)
SQL_INT2_PARM(Projectiles_SpeedMax, SQL_OUT_PARM)
SQL_INT2_PARM(Projectiles_Acceleration, SQL_OUT_PARM)
SQL_INT2_PARM(Projectiles_Size_cm, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_RadiusBlast_m, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_Red, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_Green, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_Blue, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_Alpha, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_PercentPenetration, SQL_OUT_PARM) SQL_FLT4_PARM(Projectiles_RateRotation, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_IsAbsoluteSpeed, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_IsDirectional, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_IsExplodeOnExpire, SQL_OUT_PARM)
SQL_INT1_PARM(Projectiles_IsProximityFuse, SQL_OUT_PARM)
SQL_FLT4_PARM(Projectiles_BlastPower, SQL_OUT_PARM)
SQL_FLT4_PARM(Projectiles_BlastRadius, SQL_OUT_PARM)
SQL_FLT4_PARM(Projectiles_WidthOverHeight, SQL_OUT_PARM)
SQL_INT2_PARM(Projectiles_AmbientSound, SQL_OUT_PARM)
#define SZPARTSFIELDS "P.PartID, " FEDNUM(P.SuccessorPartID) ", P.Price, P.SecondsToBuild, P.GroupID, P.PartMask, " FEDSTR(P.Name) ", " \
FEDSTR(P.FileModel) ", " FEDSTR(P.PRIcon) ", " FEDSTR(P.FileTexture) ", " FEDSTR(P.Description) ", P.PartTypeID, P.Mass, " \
"dSignatureActive, RTRIM(P.TechBitsRequired), RTRIM(P.TechBitsEffect), " FEDSTR(P.InventoryLineMDL)
#define PARTPARMS(PARTTYPE) \
SQL_INT2_PARM(PARTTYPE##_PartID, SQL_OUT_PARM) \
SQL_INT2_PARM(PARTTYPE##_SuccessorID, SQL_OUT_PARM) \
SQL_INT4_PARM(PARTTYPE##_Price, SQL_OUT_PARM) \
SQL_INT2_PARM(PARTTYPE##_TimeToBuild, SQL_OUT_PARM) \
SQL_INT1_PARM(PARTTYPE##_GroupID, SQL_OUT_PARM) \
SQL_INT2_PARM(PARTTYPE##_PartMask, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_Name, c_cbNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_FileModel, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_FileIcon, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_FileTexture, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_Description, c_cbDescriptionDB, SQL_OUT_PARM) \
SQL_INT1_PARM(PARTTYPE##_PartTypeID, SQL_OUT_PARM) \
SQL_INT2_PARM(PARTTYPE##_Mass, SQL_OUT_PARM) \
SQL_INT2_PARM(PARTTYPE##_Signature, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_TechBitsReqd, CbTechBits, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_TechBitsEffect, CbTechBits, SQL_OUT_PARM) \
SQL_STR_PARM( PARTTYPE##_InventoryLineMDL, c_cbFileNameDB, SQL_OUT_PARM)
DEF_STMT(Afterburners, "SELECT " SZPARTSFIELDS ", A.BurnRate, A.MaxThrust, "
"A.rateOn, A.rateOff, "
"A.InteriorSound, A.ExteriorSound "
"FROM Afterburners AS A, Parts AS P WHERE P.PartID=A.PartID"
" ORDER BY P.SortOrder")
PARTPARMS(Afterburners)
SQL_FLT4_PARM(Afterburners_RateBurn, SQL_OUT_PARM)
SQL_FLT4_PARM(Afterburners_ThrustMax, SQL_OUT_PARM)
SQL_FLT4_PARM(Afterburners_RateOn, SQL_OUT_PARM)
SQL_FLT4_PARM(Afterburners_RateOff, SQL_OUT_PARM)
SQL_INT2_PARM(Afterburners_InteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(Afterburners_ExteriorSound, SQL_OUT_PARM)
DEF_STMT(Ammo, "SELECT " SZPARTSFIELDS ", A.Qty, A.AmmoType "
"FROM Ammo AS A, Parts AS P WHERE P.PartID=A.PartID"
" ORDER BY P.SortOrder")
PARTPARMS(Ammo)
SQL_INT2_PARM(Ammo_Qty, SQL_OUT_PARM)
SQL_INT1_PARM(Ammo_AmmoType, SQL_OUT_PARM)
DEF_STMT(Weapons, "SELECT " SZPARTSFIELDS ", W.dTimeBurstShots, W.dTimeReady, "
"W.EnergyPerShot, W.ProjectileID1, "
"W.Dispersion, "
"W.cBulletsPerShot, "
"W.ActivateSound, W.SingleShotSound, W.BurstShotSound "
"FROM Weapons AS W, Parts AS P WHERE P.PartID=W.PartID"
" ORDER BY P.SortOrder")
PARTPARMS(Weapons)
SQL_INT2_PARM(Weapons_dTimeBurstShots, SQL_OUT_PARM)
SQL_INT2_PARM(Weapons_dTimeReady, SQL_OUT_PARM)
SQL_FLT4_PARM(Weapons_EnergyPerShot, SQL_OUT_PARM)
SQL_INT2_PARM(Weapons_ProjectileID1, SQL_OUT_PARM)
SQL_FLT4_PARM(Weapons_Dispersion, SQL_OUT_PARM)
SQL_INT2_PARM(Weapons_cBulletsPerShot, SQL_OUT_PARM)
SQL_INT2_PARM(Weapons_ActivateSound, SQL_OUT_PARM)
SQL_INT2_PARM(Weapons_SingleShotSound, SQL_OUT_PARM)
SQL_INT2_PARM(Weapons_BurstShotSound, SQL_OUT_PARM)
DEF_STMT(Shields, "SELECT " SZPARTSFIELDS ", S.RegenRate, "
"S.Hitpoints, "
"S.DefenseType, "
"S.ActivateSound, S.DeactivateSound "
"FROM Shields AS S, Parts AS P WHERE P.PartID=S.PartID"
" ORDER BY P.SortOrder")
PARTPARMS(Shields)
SQL_FLT4_PARM(Shields_RegenRate, SQL_OUT_PARM)
SQL_INT2_PARM(Shields_MaxHitPoints, SQL_OUT_PARM)
SQL_INT1_PARM(Shields_DefenseType, SQL_OUT_PARM)
SQL_INT2_PARM(Shields_ActivateSound, SQL_OUT_PARM)
SQL_INT2_PARM(Shields_DeactivateSound, SQL_OUT_PARM)
DEF_STMT(Magazines, "SELECT " SZPARTSFIELDS ", M.Amount, M.LaunchCount, M.ExpendableID "
"FROM Magazines AS M, Parts AS P WHERE P.PartID=M.PartID"
" ORDER BY P.SortOrder")
PARTPARMS(Magazine)
SQL_INT2_PARM(Magazine_Amount, SQL_OUT_PARM)
SQL_INT2_PARM(Magazine_LaunchCount, SQL_OUT_PARM)
SQL_INT2_PARM(Magazine_ExpendableID, SQL_OUT_PARM)
DEF_STMT(StationTypesCount, "SELECT COUNT(*) FROM StationTypes")
SQL_INT2_PARM(g_cStationTypes, SQL_OUT_PARM)
DEF_STMT(StationTypes, "SELECT StationTypeID, "
FEDSTR(Name) ", " FEDSTR(Description) ", " FEDSTR(Model) ", " FEDSTR(PRIcon) ", " FEDSTR(BuilderName)
", RTRIM(TechBitsLocal), RTRIM(TechBitsRequired), "
"RTRIM(TechBitsEffect), Radius, HitPointsArmor, DefenseTypeArmor, HitPointsShield, DefenseTypeShield, "
"RateRegenArmor, RateRegenShield, Price, Income, Signature, SecondsToBuild, "
FEDNUM(UpgradeStationTypeID) ", "
"Capabilities, ScanRange, AsteroidDiscountMask, "
"BuildLocationSound, ConstructorAttackedSound, ConstructorDestroyedSound, CompletedSound, "
"ExteriorSound, InteriorSound, InteriorAlertSound, UnderAttackSound, CriticalSound, "
"DestroyedSound, CapturedSound, EnemyDestroyedSound, EnemyCapturedSound, "
"GroupID, ClassID, ConstructionDroneTypeID "
"FROM StationTypes ORDER BY StationTypeID")
SQL_INT4_PARM(Stations_ID, SQL_OUT_PARM)
SQL_STR_PARM( Stations_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Stations_Description, c_cbDescriptionDB, SQL_OUT_PARM)
SQL_STR_PARM( Stations_Model, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Stations_IconName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Stations_BuilderName, c_cbNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Stations_TBLocal, CbTechBits, SQL_OUT_PARM)
SQL_STR_PARM( Stations_TBReqd, CbTechBits, SQL_OUT_PARM)
SQL_STR_PARM( Stations_TBEffect, CbTechBits, SQL_OUT_PARM)
SQL_FLT4_PARM(Stations_Radius, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_HPArmor, SQL_OUT_PARM)
SQL_INT1_PARM(Stations_DTArmor, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_HPShield, SQL_OUT_PARM)
SQL_INT1_PARM(Stations_DTShield, SQL_OUT_PARM)
SQL_FLT4_PARM(Stations_RateRegenArmor, SQL_OUT_PARM)
SQL_FLT4_PARM(Stations_RateRegenShield, SQL_OUT_PARM)
SQL_INT4_PARM(Stations_Price, SQL_OUT_PARM)
SQL_INT4_PARM(Stations_Income, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_Signature, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_SecondsToBuild, SQL_OUT_PARM)
SQL_INT4_PARM(Stations_UpgradeStationTypeID, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_Capabilities, SQL_OUT_PARM)
SQL_FLT4_PARM(Stations_ScanRange, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_AsteroidDiscountMask, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_BuildLocationSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_ConstructorAttackedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_ConstructorDestroyedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_CompletedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_ExteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_InteriorSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_InteriorAlertSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_UnderAttackSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_CriticalSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_DestroyedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_CapturedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_EnemyDestroyedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_EnemyCapturedSound, SQL_OUT_PARM)
SQL_INT1_PARM(Stations_GroupID, SQL_OUT_PARM)
SQL_INT1_PARM(Stations_ClassID, SQL_OUT_PARM)
SQL_INT2_PARM(Stations_ConstructionDroneTypeID, SQL_OUT_PARM)
DEF_STMT(SectorCount, "SELECT Count(*) FROM SectorInfo")
SQL_INT4_PARM(g_cSectors, SQL_OUT_PARM)
DEF_STMT(Effects, "SELECT EffectID, Description, RTRIM(FileSound), IsLooping "
"FROM Effects")
SQL_INT2_PARM(Effect_ID, SQL_OUT_PARM)
SQL_STR_PARM (Effect_Description, c_cbDescriptionDB,SQL_OUT_PARM)
SQL_STR_PARM (Effect_FileSound, c_cbFileNameDB, SQL_OUT_PARM)
SQL_INT1_PARM(Effect_IsLooping, SQL_OUT_PARM)
DEF_STMT(Drones, "SELECT DroneID, " FEDSTR(Name) ", " FEDSTR(Description) ", Price, "
"ShipTypeID, " FEDNUM(ExpendableID)
", RTRIM(TechBitsRequired), RTRIM(TechBitsEffect), SecondsToBuild, DroneType FROM Drones"
" ORDER BY SortOrder")
SQL_INT2_PARM(Drones_ID, SQL_OUT_PARM)
SQL_STR_PARM( Drones_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Drones_Description, c_cbDescriptionDB,SQL_OUT_PARM)
SQL_INT4_PARM(Drones_Price, SQL_OUT_PARM)
SQL_INT2_PARM(Drones_ShipTypeID, SQL_OUT_PARM)
SQL_INT2_PARM(Drones_ExpendableID, SQL_OUT_PARM)
SQL_STR_PARM( Drones_TechBitsReqd, CbTechBits, SQL_OUT_PARM)
SQL_STR_PARM( Drones_TechBitsEffect, CbTechBits, SQL_OUT_PARM)
SQL_INT2_PARM(Drones_SecToBuild, SQL_OUT_PARM)
SQL_INT4_PARM(Drones_DroneType, SQL_OUT_PARM)
SQL_INT1_PARM(Drones_GroupID, SQL_OUT_PARM)
DEF_STMT(CivsCount, "SELECT MAX(CivID) + 1 FROM Civs")
SQL_INT4_PARM(g_cCivs, SQL_OUT_PARM)
DEF_STMT(Civs, "SELECT " FEDSTR(Name) ", " FEDSTR(Description) ", "
"EscapePodShipTypeID, RTRIM(TechBitsCiv), " FEDNUM(StartingGlobalAttributeID)
", InitialStationTypeID, RTRIM(IconName), RTRIM(StationHUD), RTRIM(TechBitsCivNoDev), BonusMoney, IncomeMoney "
"FROM Civs WHERE CivID=?")
SQL_STR_PARM( Civs_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Civs_Description, c_cbDescriptionDB, SQL_OUT_PARM)
SQL_INT2_PARM(Civs_DefaultShipType, SQL_OUT_PARM)
SQL_STR_PARM( Civs_TechBits, 800, SQL_OUT_PARM)
SQL_INT2_PARM(Civs_GlobalAttr, SQL_OUT_PARM)
SQL_INT2_PARM(Civs_InitialStationTypeID, SQL_OUT_PARM)
SQL_STR_PARM( Civs_IconName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Civs_HUDName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Civs_TechBitsNoDev, 800, SQL_OUT_PARM)
SQL_FLT4_PARM(Civs_BonusMoney, SQL_OUT_PARM)
SQL_FLT4_PARM(Civs_IncomeMoney, SQL_OUT_PARM)
SQL_INT2_PARM(Civs_ID, SQL_IN_PARM)
DEF_STMT(GetGlobalAttrs, "SELECT MaxSpeed, Thrust, "
"TurnRate, TurnTorque, MaxArmorStation, ArmorRegenerationStation, MaxShieldStation, "
"ShieldRegenerationStation, MaxArmorShip, MaxShieldShip, "
"ShieldRegenerationShip, ScanRange, Signature, MaxEnergy, SpeedAmmo, "
"LifespanEnergy, TurnRateMissile, MiningRate, MiningYield, "
"RipcordTime, DamageGuns, DamageMissiles, DevelopmentCost, DevelopmentTime, MiningCapacity FROM GlobalAttributes "
"WHERE GlobalAttributeID=?")
SQL_INT2_PARM(GlobalAttrs_MaxSpeed, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_Thrust, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_TurnRate, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_TurnTorque, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MaxArmorStation, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_ArmorRegenerationStation, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MaxShieldStation, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_ShieldRegenerationStation, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MaxArmorShip, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MaxShieldShip, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_ShieldRegenerationShip, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_ScanRange, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_Signature, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MaxEnergy, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_SpeedAmmo, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_LifespanEnergy, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_TurnRateMissile, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MiningRate, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MiningYield, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_RipcordTime, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_DamageGuns, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_DamageMissiles, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_DevelopmentCost, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_DevelopmentTime, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_MiningCapacity, SQL_OUT_PARM)
SQL_INT2_PARM(GlobalAttrs_ID, SQL_IN_PARM)
DEF_STMT(DevelopmentsCount, "SELECT MAX(DevelopmentID) + 1 FROM Developments")
SQL_INT4_PARM(g_cDevelopments, SQL_OUT_PARM)
DEF_STMT(DevelopmentsIDs, "SELECT DevelopmentID FROM Developments ORDER BY SortOrder")
SQL_INT2_PARM(DevelopmentIDs_DevelopmentID, SQL_OUT_PARM)
DEF_STMT(Developments, "SELECT Price, " FEDSTR(LoadoutBitmap) ", "
FEDSTR(Name) ", " FEDSTR(PRIcon) ", " FEDSTR(Description)
", RTRIM(TechBitsRequired), RTRIM(TechBitsEffect), "
"SecondsToBuild, GroupID, " FEDNUM(GlobalAttributeID) ", CompletedSound "
"FROM Developments WHERE DevelopmentID=?")
SQL_INT4_PARM(Developments_Price, SQL_OUT_PARM)
SQL_STR_PARM( Developments_Bitmap, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Developments_Name, c_cbNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Developments_IconName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM( Developments_Description, c_cbDescription,SQL_OUT_PARM)
SQL_STR_PARM( Developments_TechBitsReqd, CbTechBits, SQL_OUT_PARM)
SQL_STR_PARM( Developments_TechBitsEffect, CbTechBits, SQL_OUT_PARM)
SQL_INT2_PARM(Developments_SecondsToBuild, SQL_OUT_PARM)
SQL_INT1_PARM(Developments_GroupID, SQL_OUT_PARM)
SQL_INT2_PARM(Developments_GlobalAttribute, SQL_OUT_PARM)
SQL_INT2_PARM(Developments_CompletedSound, SQL_OUT_PARM)
SQL_INT2_PARM(Developments_ID, SQL_IN_PARM)
DEF_STMT(SectorForSide, "SELECT SectorID FROM SectorInfo WHERE "
"BaseForSide=? + 1")
SQL_INT2_PARM(SectorForSide_SectorID, SQL_OUT_PARM)
SQL_INT2_PARM(SectorForSide_SideID, SQL_IN_PARM)
DEF_STMT(Cloaks, "SELECT " SZPARTSFIELDS ", C.EnergyConsumption, "
"C.MaxCloaking, C.OnRate, C.OffRate, "
"C.EngageSound, C.DisengageSound "
"FROM Cloaks AS C, Parts AS P WHERE P.PartID=C.PartID"
" ORDER BY P.SortOrder")
PARTPARMS(Cloaks)
SQL_FLT4_PARM(Cloaks_EnergyConsumption, SQL_OUT_PARM)
SQL_FLT4_PARM(Cloaks_MaxCloaking, SQL_OUT_PARM)
SQL_FLT4_PARM(Cloaks_OnRate, SQL_OUT_PARM)
SQL_FLT4_PARM(Cloaks_OffRate, SQL_OUT_PARM)
SQL_INT2_PARM(Cloaks_EngageSound, SQL_OUT_PARM)
SQL_INT2_PARM(Cloaks_DisengageSound, SQL_OUT_PARM)
#define SZEXPENDFIELDS "E.ExpendableID, E.Price, E.SecondsToBuild, E.GroupID, " FEDSTR(E.FileModel) ", " FEDSTR(E.PRIcon) ", " \
FEDSTR(E.Name) ", " FEDSTR(E.Description) ", RTRIM(E.TechBitsRequired), "\
"RTRIM(E.TechBitsEffect), E.SignatureShip, E.Mass, E.PartMask, E.ExpendableSize, E.Capabilities, " \
"E.LoadTime, E.LifeSpan, E.SignatureInstance, E.HitPoints, E.DefenseType, " \
FEDSTR(E.FileModelInstance) ", " FEDSTR(E.PRIconInstance) ", " FEDSTR(E.FileTextureInstance) \
", E.Radius, E.RateRotation, E.percentRed, E.percentGreen, E.percentBlue, " \
"E.percentAlpha"
#define EXPENDPARMS(EXPENDTYPE) \
SQL_INT2_PARM(EXPENDTYPE##_ExpendableID, SQL_OUT_PARM) \
SQL_INT4_PARM(EXPENDTYPE##_Price, SQL_OUT_PARM) \
SQL_INT2_PARM(EXPENDTYPE##_TimeToBuild, SQL_OUT_PARM) \
SQL_INT1_PARM(EXPENDTYPE##_GroupID, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_Model, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_Icon, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_Name, c_cbNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_Description, c_cbDescriptionDB, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_TechBitsReqd, CbTechBits, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_TechBitsEffect, CbTechBits, SQL_OUT_PARM) \
SQL_INT2_PARM(EXPENDTYPE##_SignatureShip, SQL_OUT_PARM) \
SQL_FLT4_PARM(EXPENDTYPE##_Mass, SQL_OUT_PARM) \
SQL_INT2_PARM(EXPENDTYPE##_PartMask, SQL_OUT_PARM) \
SQL_INT2_PARM(EXPENDTYPE##_ExpendableSize, SQL_OUT_PARM) \
SQL_INT2_PARM(EXPENDTYPE##_Capabilities, SQL_OUT_PARM) \
SQL_FLT4_PARM(EXPENDTYPE##_LoadTime, SQL_OUT_PARM) \
SQL_FLT4_PARM(EXPENDTYPE##_LifeSpan, SQL_OUT_PARM) \
SQL_FLT4_PARM(EXPENDTYPE##_SignatureInstance, SQL_OUT_PARM) \
SQL_INT2_PARM(EXPENDTYPE##_HitPoints, SQL_OUT_PARM) \
SQL_INT1_PARM(EXPENDTYPE##_DefenseType, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_ModelInstance, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_IconInstance, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_STR_PARM( EXPENDTYPE##_TextureInstance, c_cbFileNameDB, SQL_OUT_PARM) \
SQL_FLT4_PARM(EXPENDTYPE##_Radius, SQL_OUT_PARM) \
SQL_FLT4_PARM(EXPENDTYPE##_Rotation, SQL_OUT_PARM) \
SQL_INT1_PARM(EXPENDTYPE##_PercentRed, SQL_OUT_PARM) \
SQL_INT1_PARM(EXPENDTYPE##_PercentGreen, SQL_OUT_PARM) \
SQL_INT1_PARM(EXPENDTYPE##_PercentBlue, SQL_OUT_PARM) \
SQL_INT1_PARM(EXPENDTYPE##_PercentAlpha, SQL_OUT_PARM)
DEF_STMT(Missiles, "SELECT " SZEXPENDFIELDS
", M.MaxLock, M.ChaffResistance, M.Acceleration, M.TurnRate, M.InitialSpeed, M.LockTime, "
"M.ReadyTime, M.Dispersion, M.LockAngle, M.Power, M.DamageType, "
"M.BlastPower, M.BlastRadius, M.IsDirectional, M.WidthOverHeight, "
"M.LaunchSound, M.FlightSound "
"FROM Missiles AS M, Expendables AS E WHERE E.ExpendableID=M.ExpendableID")
EXPENDPARMS(Missiles)
SQL_FLT4_PARM(Missiles_MaxLock, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_Resistance, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_Acceleration, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_TurnRate, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_InitialSpeed, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_LockTime, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_ReadyTime, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_Dispersion, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_LockAngle, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_Power, SQL_OUT_PARM)
SQL_INT1_PARM(Missiles_DamageType, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_BlastPower, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_BlastRadius, SQL_OUT_PARM)
SQL_INT1_PARM(Missiles_IsDirectional, SQL_OUT_PARM)
SQL_FLT4_PARM(Missiles_WidthOverHeight, SQL_OUT_PARM)
SQL_INT2_PARM(Missiles_LaunchSound, SQL_OUT_PARM)
SQL_INT2_PARM(Missiles_FlightSound, SQL_OUT_PARM)
DEF_STMT(Chaff, "SELECT " SZEXPENDFIELDS
", C.Strength "
"FROM Chaff AS C, Expendables AS E WHERE E.ExpendableID=C.ExpendableID")
EXPENDPARMS(Chaff)
SQL_FLT4_PARM(Chaff_Strength, SQL_OUT_PARM)
DEF_STMT(Mines, "SELECT " SZEXPENDFIELDS ", M.PlacementRadius, M.MunitionCount, "
"M.Power, M.DamageType "
"FROM Mines AS M, Expendables AS E WHERE E.ExpendableID=M.ExpendableID")
EXPENDPARMS(Mines)
SQL_FLT4_PARM(Mines_PlacementRadius, SQL_OUT_PARM)
SQL_INT1_PARM(Mines_MunitionCount, SQL_OUT_PARM)
SQL_FLT4_PARM(Mines_Power, SQL_OUT_PARM)
SQL_INT1_PARM(Mines_DamageType, SQL_OUT_PARM)
DEF_STMT(Probes, "SELECT " SZEXPENDFIELDS ", P.ScanRange, " FEDNUM(P.ProjectileID)
", P.dtimeBurst, P.accuracy, P.dispersion, P.Ammo, P.dtRipcord, P.AmbientSound "
"FROM Probes AS P, Expendables AS E WHERE E.ExpendableID=P.ExpendableID")
EXPENDPARMS(Probes)
SQL_FLT4_PARM(Probes_ScanRange, SQL_OUT_PARM)
SQL_INT2_PARM(Probes_ProjectileTypeID, SQL_OUT_PARM)
SQL_INT2_PARM(Probes_dtimeBurst, SQL_OUT_PARM)
SQL_INT1_PARM(Probes_accuracy, SQL_OUT_PARM)
SQL_FLT4_PARM(Probes_dispersion, SQL_OUT_PARM)
SQL_INT2_PARM(Probes_ammo, SQL_OUT_PARM)
SQL_INT1_PARM(Probes_dtRipcord, SQL_OUT_PARM)
SQL_INT2_PARM(Probes_AmbientSound, SQL_OUT_PARM)
DEF_STMT(MaxPartID, "SELECT MAX(PartID)+1 FROM Parts")
SQL_INT2_PARM(MaxPartID_ID, SQL_OUT_PARM)
DEF_STMT(TreasureSets, "SELECT TreasureSetName, TreasureSetID, IsZoneOnly "
"FROM TreasureSets ORDER BY TreasureSetID DESC")
SQL_STR_PARM( TreasureSets_Name, CbTechBitName, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureSets_ID, SQL_OUT_PARM)
SQL_INT1_PARM(TreasureSets_IsZoneOnly, SQL_OUT_PARM)
DEF_STMT(TreasureChance, "SELECT TreasureCode, ObjectID, Chance, TreasureSetID FROM TreasureChances")
SQL_INT1_PARM(TreasureChance_TreasureCode, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureChance_ObjectID, SQL_OUT_PARM)
SQL_INT1_PARM(TreasureChance_Chance, SQL_OUT_PARM)
SQL_INT2_PARM(TreasureChance_SetID, SQL_OUT_PARM)
DEF_STMT(GetICQID, "Select " FEDNUM(ICQID) " From CharacterInfo Where CharacterName=?")
SQL_INT4_PARM(GetICQID_ID, SQL_OUT_PARM)
SQL_STR_PARM( GetICQID_CharName, c_cbNameDB, SQL_IN_PARM)
DEF_STMT(TechBitsAll, "SELECT BitID, RTRIM(BitShortName) From TechBits ORDER BY BitShortName")
SQL_INT4_PARM(TechBitsAll_BitID, SQL_OUT_PARM)
SQL_STR_PARM( TechBitsAll_Name, CbTechBitName, SQL_OUT_PARM)
DEF_STMT(GetRankCount, "Select Count(*) From Ranks")
SQL_INT2_PARM(GetRankCount_Count, SQL_OUT_PARM)
DEF_STMT(GetRanks, "SELECT Rank, " FEDNUM(CivID) ", Requirement, Name FROM Ranks ORDER BY CivID, Rank")
SQL_INT2_PARM(GetRanks_Rank, SQL_OUT_PARM)
SQL_INT2_PARM(GetRanks_CivID, SQL_OUT_PARM)
SQL_INT4_PARM(GetRanks_Requirement, SQL_OUT_PARM)
SQL_STR_PARM( GetRanks_Name, c_cbNameDB, SQL_OUT_PARM)
DEF_STMT(GetStaticMapCount, "Select Count(*) From Maps Where IsUserOption = 1")
SQL_INT2_PARM(GetStaticMapCount_Count, SQL_OUT_PARM)
DEF_STMT(GetStaticMaps, "SELECT NumTeams, " FEDSTR(FileName) ", " FEDSTR(MapName)
"FROM Maps Where IsUserOption = 1 ORDER BY MapID")
SQL_INT1_PARM(GetStaticMaps_NumTeams, SQL_OUT_PARM)
SQL_STR_PARM(GetStaticMaps_FileName, c_cbFileNameDB, SQL_OUT_PARM)
SQL_STR_PARM(GetStaticMaps_MapName, c_cbNameDB, SQL_OUT_PARM)
END_SQL_DEF
#endif #endif