; td_engine configuration file
;==========================
;MAIN
;==========================
; Save mode
; 1 - save by Nick
; 2 - save by IP
; 3 - save by authid
DATA_SAVE_MODE = 1
; Limit of saving gold per non VIP defender
BANK_LIMIT = 1300
; Limit of saving gol per VIP defender
BANK_LIMIT_VIP = 2000
; Time after afk players will moved to spectators
; Warning! Only const values divisible by 5! etc 5, 10, 15, 20
; Set 0 to disable
AFK_TIME = 180
;Gold per kill monster.
KILL_GOLD = 8
;Money per kill monster.
KILL_MONEY = 400
;Gold per kill Bonus.
KILL_BONUS_GOLD = 100
;Gold per kill Boss.
KILL_BOSS_GOLD = 150
;Frags per kill Bonus.
KILL_BONUS_FRAGS = 20
;Frags per kill Boss.
KILL_BOSS_FRAGS = 25
;Extra BP ammo sets to acutally weapon per kill
KILL_BP_AMMO = 0
;Premium monster chance -> set 0 to disable
PRM_MONSTER_CHANCE = 30
;Set green glow for premium monster?
PRM_MONSTER_GLOW = 1
;Multiplier of HP(premium monster) [float]
PRM_MONSTER_MLTP_HP = 2.0
;Multiplier of SPEED (premium monster) [float]
PRM_MONSTER_MLTP_SPEED = 1.0
;Multiplier of earned gold (premium monster) [float]
PRM_MONSTER_MLTP_GOLD = 3.5
;How long players must be in startzone to start wave? [seconds]
START_ZONE_STAY_TIME = 10
;Enable repair zone on map?
;NOTE: If is not exist repair zone on map it will be automaticly set 0
REPAIR_ZONE = 1
;Only one player can repair tower in one moment?
REPAIR_ZONE_ONE_PLAYER = 0
;How many blocks must be repaired to set tower health?
REPAIR_ZONE_BLOCKS = 2
;Price of repairing one block.
;NOTE: If td_repair_zone_blocks is 0 - it is cost of repair tower
;NOTE: Amount of repairing tower you can set in map configuration file
REPAIR_ZONE_COST = 35
;==========================
;NOTE: Time of repairing blocks or tower you can set in map configuration file
;==========================
;Min value which bonus can steal
BONUS_MIN_GOLD = 1
;Max value which bonus can steal
BONUS_MAX_GOLD = 8
;Bonus chance to steal in 0.5 second
;if 4 -> 1/2 in 1 second
BONUS_STAEL_CHANCE = 3
;==========================
;NOTE:Bonus stealing you can set in map configuration file
;==========================
;Time-out between sending monsters [float]
SEND_MONSTER_TIME = 1.9
;Allow to play alone?
ONE_PLAYER_MODE = 1
;Headshot damage multipier
HEADSHOT_DAMAGE_MLTP = 2.2
;Voting time
VOTE_MAP_TIME = 30
;In all votes players can vote 'restart map'?
VOTE_ALLOW_RESTART = 1
;Minimum alive players to multiply monster health
;If you want to disable it, set min_players to 100
WAVE_MLTP_MIN_PLAYERS = 2
;@NOTE:
;How does it work?
;MonsterHealth = MonsterHealth * ( multiplier ^ alive_players )
;Multiplier of HP for no special monsters
WAVE_MLTP_HP = 1.07
;Multiplier of HP for BOSS
WAVE_MLTP_HP_BOSS = 1.05
;Multiplier of HP for BONUS
WAVE_MLTP_HP_BONUS = 1.05
;==================================
; Effects
;==================================
;Show info when user kill monster?
SHOW_DEATH_MSG = 1
;If td_hit_monster_blood fx = 1 -
;Chance of showing blood fx
;e.g 2 - 1/2 | 3 - 1/3
HIT_MONSTER_BLOOD_CHANCE = 2
;Emit sound when monster hitted?
HIT_MONSTER_SOUND = 1
;Emit sound when monster killed?
KILL_MONSTER_SOUND = 1
;Round boss fog color [string]
;set 000 000 000 if you don't want to create fog.
BOSS_FOG = "133 006 006"
;Round bonus fog color [string]
;set 000 000 000 if you don't want to create fog.
BONUS_FOG = "110 110 006"
;Default s fog color [string]
;set 000 000 000 if you don't want to create fog.
FOG = "006 006 30"
;Kill monster effect [sprite]
KILL_MONSTER_FX = 0
;Enable respawn player '/respawn' & '/odrodz' commands?
RESPAWN_CMD = 1
;Gold for survive wave
WAVE_EXTRA_GOLD = 7
;Money for survive wave
WAVE_EXTRA_MONEY = 1000
;==========================
;Grenades
;==========================
;Napalm grenade duration time
NAPALM_NADE_DURATION = 10
;Range where monsters will be 'registered' with napalm grenade
NAPALM_NADE_RADIUS = 400
;Damage, 1 second - 5x times will take damage
NAPALM_NADE_DAMAGE = 19
;Max napalm grenades
NAPALM_NADE_LIMIT = 2
;Frozen grenade duration time
FROZEN_NADE_DURATION = 5
;Range where monsters will be 'registered' with frozen grenade
FROZEN_NADE_RADIUS = 400
;Which speed will be setted when monster will be freezed?
; 0.5 - 50% of actual monster speed
; 0.2 - 20% of actual monster speed
; Value must be float
FROZEN_NADE_SLOW_PERCENT = 0.5
;Max frozen grenades
FROZEN_NADE_LIMIT = 2
;Grenade which stopping monsters - duration time
STOP_NADE_DURATION = 8
;Radius of grenade which stopping monsters
STOP_NADE_RADIUS = 400
;Max stop grenades
STOP_NADE_LIMIT = 2
;=========================
; OTHER COMMANDS
;=========================
;Show level as chat prefix?
PREFIX_CHAT_SHOW_LEVEL = 1
;Block 'kill' command?
BLOCK_CMD_KILL = 1
;Damage ratio, after you get X gold and X money(edit below)
DAMAGE_RATIO = 450
;Gold per X damage
DAMAGE_GOLD = 1
;Money per X damage
DAMAGE_MONEY = 100
;Shows left monster HP? print_center status text (near crosshair)
SHOW_CENTER_LEFT_DAMAGE = 1
;Enable swapping money per $?
SWAP_MONEY = 1
;Swap money price
SWAP_MONEY_NEED = 10000
;Gold which you get, when you swap money
SWAP_MONEY_GOLD_NUM = 15
;Enable giving extra money and gold, when player respawned?
JOIN_PLAYER_EXTRA = 0
;Min wave, when player getting extra money and gold (when game started)
JOIN_PLAYER_EXTRA_MIN_WAVE = 3
;Money multiplier per wave [X wave * multiplier]
JOIN_PLAYER_EXTRA_MONEY = 700
;Gold multiplier per wave [X wave * multiplier]
JOIN_PLAYER_EXTRA_GOLD = 8
;Auto respawn players?
AUTO_RESPAWN = 1
;If players won the game, how much extra gold they got?
WIN_GAME_GOLD_PRIZE = 200
;If players lost the game, how much extra gold they got?
LOSE_GAME_GOLD_PRIZE = 50
;==========================
; VIP
;==========================
;Enable VIP?
VIP = 1
;Extra speed bonus [250 + X]
;Set 0 if VIP hasn't extra speed
VIP_EXTRA_SPEED = 38
;Multiplier of taking damage [NOTE: Only Float values]
VIP_EXTRA_DAMAGE_MLTP = 1.1
;VIP flag (to set in users.ini)
VIP_FLAG = "t"
;Shows VIP status in score table?
VIP_SHOW_IN_TABLE = 1
;Chat prefix [Set "" to disable chat prefix]
VIP_CHAT_PREFIX = "[VIP]"
;Chat prefix colors:
; 1 - Yellow chat prefix
; 2 - Green chat prefix
; 3 - Team Color chat prefix
VIP_CHAT_COLOR = 2
;Extra gold for kill
VIP_EXTRA_KILL_GOLD = 1
;Extra money for kill
VIP_EXTRA_KILL_MONEY = 100
;Extra gold for "win" wave
VIP_SURVIVE_WAVE_GOLD = 1
;Extra money for "win" wave
VIP_SURVIVE_WAVE_MONEY = 200
;Which weapon with full ammo can have VIP, every respawn?
; flags of start weapons
; a - deagle
; b - elite
; c - mp5
; d - p90
; e - galil
; f - ak47
; g - m4a1
; h - aug
; i - m249
; j - krieg
; k - awp
; l - g3sg1
; m - sg550
; [NOTE: Set "" to disable this feature]
VIP_START_WEAPONS = ""
;==========================
; OTHERS
;==========================
; If someone shot monster with critical shot
; how long monster should be slowed?
; default: 0.5 | 0.0 to disable
CRITICAL_SHOT_SLOW_DOWN_DURATION = 0.5
;===========================
;======td_assists.amxx======
;===========================
;Enable assists on server?
td_assists_on 1
;Gold per assist
td_assists_gold 1
;Money per assist
td_assists_money 120
;Gold per assist kill a special monster
td_assists_gold_special 25
;Money per assist kill a special monster
td_assists_money_special 1000
;Multiplier of damage, to assisting
;example, monster have 200HP, if multiplier is 0.4, you must set 80 damage, to assisting
td_assists_min_damage_percent 0.2
;===========================
;td_best_players.amxx
;===========================
;Show best players of wave? [ or /bestw ]
td_show_best_of_wave 1
;Show best players of game? [ or /best ]
td_show_best_of_game 1
;How many players show in TOP?
td_show_best_num 3
;How much gold will got best player of wave?
td_show_best_gold 1
;How much money will got best player of wave?
td_show_best_money 150
;Enable /stats command?
td_show_user_stats_cmd 1
;===========================
; semiclip module
;===========================
// Transparency effect.
semiclip_effects 1 // [0 Disabled OR 1 Enabled]
// If transparency effect is enabled, the amount of transparency. A smaller amount will result in more transparency.
semiclip_transparency_amount 180 // [0 TO 255]
; insert ';' as first character on line, if you want a comment
; models dir: models/TD/yourmodel
; please do not insert .mdl in this file, only file name
NORMAL_MDL 1 = normal1
NORMAL_MDL 2 = normal2
NORMAL_MDL 3 = normal4
NORMAL_MDL 4 = normal4
FAST_MDL 1 = fast1
FAST_MDL 2 = fast2
FAST_MDL 3 = fast3
FAST_MDL 4 = fast4
STRENGTH_MDL 1 = strength1
STRENGTH_MDL 2 = strength2
STRENGTH_MDL 3 = strength3
STRENGTH_MDL 4 = strength4
BONUS_MDL 1 = bonus
BONUS_MDL 2 = bonus
BONUS_MDL 3 = bonus
BONUS_MDL 4 = bonus
BOSS_MDL 1 = boss
BOSS_MDL 2 = boss
BOSS_MDL 3 = boss
BOSS_MDL 4 = boss
;If you have other tower model you can drop it here
TOWER_MDL 1 = tower
TOWER_MDL 2 = tower
TOWER_MDL 3 = tower
TOWER_MDL 4 = tower
;Flame grenade models in models/TD/model.mdl
FLAME_GRENADE_MDL_V = v_burngrenade
FLAME_GRENADE_MDL_W = w_burngrenade
FLAME_GRENADE_MDL_P = p_burngrenade
;Frozen grenade models in models/TD/model.mdl
FROZEN_GRENADE_MDL_V = v_frozengrenade
FROZEN_GRENADE_MDL_W = w_frozengrenade
FROZEN_GRENADE_MDL_P = p_frozengrenade
;Stop grenade models in models/TD/model.mdl
STOP_GRENADE_MDL_V = v_stopgrenade
STOP_GRENADE_MDL_W = w_stopgrenade
STOP_GRENADE_MDL_P = p_stopgrenade
;Warning, VIP PATH IS:
; models/player/your_model/your_model.mdl
; it cannot be difference becouse half life engine restrict this
VIP_MODEL = vip
;If you want to turn off some sound
;please set "TD/silence.wav"
START_WAVE = "TD/start_wave.wav"
CLEAR_WAVE = "TD/clear_wave.wav"
STOP_GRENADE = "TD/stop_grenade.wav"
DEFENDERS_WIN = "TD/game_defenders_win.wav"
DEFENDERS_LOSE = "TD/game_defenders_lose.wav"
;Monster sounds emited when monster killed
MONSTER_DIE_1 = "TD/monster_die5.wav"
MONSTER_DIE_2 = "TD/monster_die6.wav"
MONSTER_DIE_3 = "TD/monster_die3.wav"
MONSTER_DIE_4 = "TD/monster_die4.wav"
BOSS_DIE = "TD/boss_die.wav"s
BONUS_DIE = "TD/bonus_die.wav"
BOSS_SPAWNED = "TD/boss_spawned.wav"
BONUS_SPAWNED = "TD/silence.wav"
;Monster sounds emited when you hit it
MONSTER_HIT_1 = "TD/monster_hit1.wav"
MONSTER_HIT_2 = "TD/monster_hit2.wav"
MONSTER_HIT_3 = "TD/monster_hit3.wav"
MONSTER_HIT_4 = "TD/monster_hit4.wav"
MONSTER_SND_1 = "TD/monster_sound1.wav"
MONSTER_SND_2 = "TD/monster_sound2.wav"
MONSTER_SND_3 = "TD/monster_sound1.wav"
MONSTER_SND_4 = "TD/monster_sound2.wav"
;Monster sounds emited when is countdown. You can hear it near start
MONSTER_GROWL_1 = "TD/monster_growl1.wav"
MONSTER_GROWL_2 = "TD/monster_growl2.wav"
MONSTER_GROWL_3 = "TD/monster_growl3.wav"
MONSTER_GROWL_4 = "TD/monster_growl4.wav"
PLAYER_LEVELUP = "TD/player_levelup.wav"
PLAYER_USE_LIGHTING = "TD/player_use_lighting.wav"
COIN = "TD/coin.wav"
ACTIVATED = "TD/activated.wav"
COUNTDOWN = "TD/countdown.wav"
HIT_SOUND = "TD/hit_sound.wav"
LAST_MAN = "TD/last_man.wav"
; td_turrets_engine file configuration
;Move turret price
TURRET_MOVE_COST = 20
;Normal turret ammo num
TURRET_BULLET_AMMO_NUM = 150
;Normal turret ammo price
TURRET_BULLET_AMMO_COST = 30
;Laser turret ammo num
TURRET_LASER_AMMO_NUM = 80
;Laser turret ammo price
TURRET_LASER_AMMO_COST = 45
;Lighting turret ammo num
TURRET_LIGHTING_AMMO_NUM = 250
;Lighting turret ammo price
TURRET_LIGHTING_AMMO_COST = 55
;Multilaser turret ammo num
TURRET_M_LASER_AMMO_NUM = 30
;Multilaser turret ammo price
TURRET_M_LASER_AMMO_PRICE = 75
;ROCKET turret ammo num
TURRET_ROCKET_AMMO_NUM = 30
;ROCKET turret ammo price
TURRET_ROCKET_AMMO_PRICE = 75
;Gatling turret ammo num
TURRET_GATLING_AMMO_NUM = 500
;Gatlin turret ammo price
TURRET_GATLING_AMMO_PRICE = 200
;You must look at other plugins, if you change value below (example: player class - engineer)
;Czas[float] po jakim wie¿yczka zostanie uaktywniona po przeniesieniu
TURRET_MOVE_INSTALL_TIME = 6.0
;Upgrade time[float]
TURRET_UPGRADE_TIME = 8.0
;Install time[float]
TURRET_INSTALL_TIME = 13.0
;Reload time[float]
TURRET_RELOAD_TIME = 7.0
;Change name cost
TURRET_CHANGE_NAME_COST = 10
;Enable chargeback when player remove own turret?
TURRET_REMOVE_CHARGE_BACK = 0
;If yes - how many % he will got back
; 0.4 -> 40% of all costs
TURRET_REMOVE_CHARGE_BACK_MLTP = 0.25
;Show deathmsg(top right side) when players' turret kill monster?
TURRET_SHOW_DEATH_MSG = 1
;Change enemy time [float]
TURRET_CHANGE_ENEMY_TIME = 0.6
;Max turrets num on server
MAX_SERVER_TURRETS = 20
;Turrets - must be TURRET_ prefix
TURRET_MENU_SELECT = "TD/menu_select.wav"
TURRET_BULLET_FIRE_1 = "TD/bullet_fire_new_1.wav"
TURRET_BULLET_FIRE_2 = "TD/bullet_fire_new_2.wav"
TURRET_LASER_FIRE_1 = "TD//turret_fire_laser_1.wav"
TURRET_LASER_FIRE_2 = "TD//turret_fire_laser_2.wav"
TURRET_LIGHTING_FIRE_1 = "TD/turret_fire_lighting_1.wav"
TURRET_LIGHTING_FIRE_2 = "TD/turret_fire_lighting_1.wav"
TURRET_M_LASER_FIRE_1 = "TD/multi_laser_fire_1.wav"
TURRET_M_LASER_FIRE_2 = "TD/multi_laser_fire_1.wav"
TURRET_ROCKET_FIRE_1 = "TD/rocket_fire_1.wav"
TURRET_ROCKET_FIRE_2 = "TD/rocket_fire_1.wav"
TURRET_GATLING_FIRE_1 = "TD/bullet_fire_new_1.wav"
TURRET_GATLING_FIRE_2 = "TD/bullet_fire_new_2.wav"
TURRET_START_FIRE = "TD/turret_start.wav"
TURRET_STOP_FIRE = "TD/turret_stop.wav"
TURRET_PLANT = "TD/turret_plant.wav"
TURRET_LOW_AMMO = "TD/turret_lowammo.wav"
TURRET_NO_AMMO = "TD/turret_noammo.wav"
TURRET_READY = "TD/turret_ready.wav"
TURRET_LEVELUP = "TD/turret_levelup.wav"
enum
{
ROUND_NONE = 0,
ROUND_NORMAL,
ROUND_FAST,
ROUND_STRENGTH,
ROUND_BOSS,
ROUND_BONUS
}
enum ENUM_WAVE_INFO
{
WAVE_ROUND_TYPE,
WAVE_MONSTER_NUM,
WAVE_MONSTER_HEALTH,
WAVE_MONSTER_SPEED,
WAVE_SPECIAL_HEALTH,
WAVE_SPECIAL_SPEED
}
enum ENUM_PLAYER
{
PLAYER_GOLD,
PLAYER_FRAGS,
PLAYER_LEVEL,
PLAYER_EXTRA_DAMAGE,
PLAYER_EXTRA_SPEED,
PLAYER_EXTRA_GOLD,
PLAYER_EXTRA_MONEY,
PLAYER_NAPALM_NADE,
PLAYER_FROZEN_NADE,
PLAYER_CRITICAl_PERCENT
}
enum
{
PLAYERS_PLAYING,
PLAYERS_WIN,
PLAYERS_LOSE
}
enum _:TOTEMS
{
TOTEM_NONE,
TOTEM_RANGE,
TOTEM_DAMAGE,
TOTEM_FIRERATE,
TOTEM_ALL,
}
enum _:ENUM_TURRETS_TYPE
{
TURRET_NONE,
TURRET_BULLET,
TURRET_LASER,
TURRET_LIGHTING,
TURRET_MULTI_LASER,
TURRET_ROCKET,
TURRET_GATLING
}
enum
{
TURRET_SHOW_NONE,
TURRET_SHOW_GLOW,
TURRET_SHOW_TRANSPARENT
}
/* Returns max waves limit */
native td_get_max_wave();
/* Returns max monsters limit per wave */
native td_get_max_monsters_num();
/* Returns max player level */
native td_get_max_player_level();
/* Returns '1' if player is VIP */
native td_is_user_vip(iPlayer);
/* Returns '1' if is special round BOSS, BONUS*/
native td_is_special_wave(iWave);
/* Returns '1' if entity is BOSS, '2' if entity is BONUS otherwise 0*/
native td_is_special_monster(iEnt);
/* Returns '1' if entity is healthbar*/
native td_is_healthbar(iEnt);
/* Returns '1' if entity is monster */
native td_is_monster(iEnt);
/* Returns '1' if game is possible */
native td_is_game_possible();
/* Returns actual wave */
native td_get_actual_wave();
/* Sets wave, Returns 1 if wave has been setted, otherwise 0*/
native td_set_actual_wave(iWave);
/* Returns a wave info */
native td_get_wave_info(iWave, ENUM_WAVE_INFO:iInfo);
/* Sets a wave info
@WARNING: Round Type you must set before wave started
*/
native td_set_wave_info(iWave, ENUM_WAVE_INFO:iInfo, _:iValue);
/* Returns a player info */
native td_get_user_info(iPlayer, ENUM_PLAYER:iInfo);
/* Sets a player info */
native td_set_user_info(iPlayer, ENUM_PLAYER:iInfo, iValue);
/* Returns player hud size option */
native td_get_user_hud_size(iPlayer);
/* Returns 1 if monster is premium monster */
native td_is_premium_monster(iEnt);
/* Returns monster type */
native td_get_monster_type(iEnt);
/* Returns monster speed
@Param: if defaultspeed is '1' then will be returned default speed of monster (depends of monster type)
if defualtspeed is '0' then will be returned actual monster speed
*/
native td_get_monster_speed(iEnt, defaultspeed=0);
/* Sets monster speed
@Param: if defaultspeed is '1' then will be set normal monster speed, if '0' then the speed from 'speed' param.
@Param: if now is '1' then monster will be slowed/fastest just after using this function, if '0' after changed track
*/
native td_set_monster_speed(ent, speed, defaultspeed = 0, now = 1);
/* Returns monster HP */
native td_get_monster_health(iEnt);
/* Returns id[ent] healthbar of monster*/
native td_get_monster_healthbar(iEnt);
/* Returns a 'start' entity origins (monster respawns) */
native td_get_start_origin(Float:outOrigin[3]);
/* Returns a 'end' entity origins (tower origin) */
native td_get_end_origin(Float:outOrigin[3]);
/* Kill monster by player */
native td_kill_monster(iEnt, iPlayer);
/* Returns true if is tower model on map */
native td_is_tower_model_on_map();
/* Removes tower model. Returns '1' if model will be deleted, otherwise 0 */
native td_remove_tower();
/* Killing all monsters */
native td_remove_monsters();
/* Register a shop item
@Note:
iPluginIndex = is a index which you must set when you eg. registering plugin.
example:
new iPluginIndex = register_plugin(A, B, C);
*/
native td_shop_register_item(const szName[], const szDescription[], const iPrice, const iOnePerMap = 0, iPluginIndex);
/* Register a player class */
native td_register_class(const szClassName[], const szClassDescription[], iPluginIndex);
/* Sets a tower health */
native td_set_tower_health(iAdd = 1, iHealth, iExplode = 0);
/* Returns a tower health */
native td_get_tower_health();
/* Returns max tower health on map */
native td_get_max_tower_health();
/* If game is ended, returns PLAYERS_WIN or PLAYERS_LOSE. Otherwise PLAYERS_PLAYING */
native td_get_end_status();
/* Zwraca czas, jaki jest odejmowany przy sterowania thinami.
Na przyk³ad Install Time = 5.0 - ExtraTime
*/
native Float:td_get_player_extra_time(index);
/* Ustawia extra czas */
native td_set_player_extra_time(index, Float:fTime);
/* Return maxhealth of monster */
native td_get_monster_maxhealth(iEnt);
native td_give_user_napalm_grenade(index);
native td_give_user_frozen_grenade(index);
native td_give_user_stop_grenade(index);
native td_get_chat_prefix(szOutpout[], len);
native td_get_log_file_name(szOutpout[], len);
/* Returns '1' if wave is now played */
native td_is_wave_started();
/* ============================ */
/* Forwards */
/* ============================ */
/* Wykonywany podczas odswiezania ustawien (cvary itp) */
forward td_settings_refreshed();
/* Wykonwywany przy rozpoczeciu wave'u */
forward td_wave_started(iWave, iMonsterType, iNum)
/* Wykonwywany przy zakonczeniu wave'u */
forward td_wave_ended(iEndedWave);
/* Wykonywany przy zakonczeniu gry
@iEndResult - PLAYER_WIN / PLAYER_LOSE
*/
forward td_game_ended(iEndResult);
/* Wykonywany przed zabiciem potwora */
forward td_monster_killed(iEnt, iPlayer, iMonsterType, IsKilledByWeapon);
/* Wykonywany podczas kupienia przedmiotu w sklepie */
forward td_shop_item_selected(iPlayer, iItemId);
/* Wykonywany podczas wybrania klasy */
forward td_class_selected(iPlayer, iClassIndex);
/* Wykonywany podczas wylaczania klasy */
forward td_class_disabled(iPlayer, iClassIndex);
/* Wykonywany podczas resetowania gry */
forward td_reset_game(iMode, Float:fTime);
/* Wykonywany przy resetowaniu wszystkich informacji u gracza */
forward td_reset_player_info(iPlayer);
/* Wykonywany przed zadaniem obrazen potworowi
@UWAGA: Tylko przy DMG_BULLET
szInDamage[0] = INT Damage
szInDamage[1] = isCritical
*/
forward td_take_damage(iPlayer, iEnt, iWeapon, Float:fOutDamage, szInDamage[3]);
/* Wykonywany po zadaniem obrazen potworowi
@UWAGA: Tylko przy DMG_BULLET
szInDamage[0] = INT Damage
szInDamage[1] = isCritical
*/
forward td_take_damage_post(iPlayer, iEnt, iWeapon, Float:fOutDamage, szInDamage[3]);
/* Wykonywany przy starcie odliczania do nastepnego wave
@iToWhichWave Zwraca numer wav'e dla ktorego odlicza, przykladowo
weszli pierwsi gracze, wiec iToWhichWave zwroci wratosc 1,
poniewaz po odliczaniu bedzie wave nr. 1,
natomiast po przejciu 2 wavu, odlicza do 3
*/
forward td_countdown_started(iToWhichWave);
/* Executed 1 second before map change */
forward td_remove_data();
/* Returns a max turrets can be placed on map*/
native td_get_max_map_turrets();
/* Returns 'true' if turret's are enabled on actually played map */
native td_are_turrets_enabled();
/* Returns a turret type
- TURRET_NONE,
- TURRET_BULLET,
- TURRET_LASER,
- TURRET_LIGHTING
*/
native td_get_player_turret_type(index, turret);
/* Sets turret type
(Check type above)
You must be careful before using this native.
If you for example changed from BULLET to LASER, when
turret had eg. damage level 5 but LASER turret can have only damaage level 4,
you can experience bugs/errors.
*/
native td_set_player_turret_type(index, turret, type);
/* Returns 1 if slot is bought by player otherwise 0 */
native td_get_player_turret_slot(index, slot);
/* Sets bought slot by player */
native td_set_player_turret_slot(index, slot, bool:value);
/* Sets for player alarm ammo value */
native td_set_player_alarm_value(index, iValue);
/* Returns player alarm ammo value */
native td_get_player_alarm_value(index);
/* Returns 1 if turret is upgrading otherwise 0 */
native td_is_turret_upgrading(index, turret);
/* Sets turret is upgrading */
native td_set_is_turret_upgrading(index, turret, bool:value);
/* Returns a player turret entity */
native td_get_player_turret_entity(index, turret);
/* Sets a player turret entity */
native td_set_player_turret_entity(id, turret, iEntity);
/* Returns turret level */
native td_get_player_turret_level(index, turret);
/* Returns turret a damage level */
native td_get_player_turret_dmg_level(index, turret);
/* Returns turret a range level */
native td_get_player_turret_rng_level(index, turret);
/* Returns turret ammo num*/
native td_get_player_turret_ammo(index, turret);
/* Sets turret ammo*/
native td_set_player_turret_ammo(index, turret, value);
/* Returns entity moving turret, if is not moving any turret, returns 0 */
native td_get_moved_turret_entity(index);
/* Returns a player turrets num*/
native td_get_player_turrets_num(index);
/* Returns entity of turret target
@Note: EV_INT_iuser4
turret_entity - turret entity
index - player index
turret - turret index
@note If 'turret_entity' is not specified, you must set 'index' and 'turret'
*/
native td_get_turret_target(turret_entity, player_index=0, turret=0);
/* Returns turret index
@Note: EV_INT_iuser1
@Note: check above about index & turret
*/
native td_get_turret_id(turret_entity, index=0, turret=0);
/* Returns owner of turret
@Note: EV_ENT_owner
@Note check above about index & turret
*/
native td_get_turret_owner(turret_entity, index=0, turret=0);
/* Zwraca Index 'rangera' danej wiezyczki
@Note: EV_ENT_euser3
@Note check above about index & turret
*/
native td_get_turret_ranger(turret_entity, index=0, turret=0);
/* Zwraca '1' jesli jest to wiezyczka, '0' jesli nie */
native td_is_turret(iEnt);
/* Zwraca '1' jesli jest to ranger, '0' jesli nie */
native td_is_ranger(iEnt);
/* Zwraca '1' jesli jest to ammobar, '0' jesli nie */
native td_is_ammobar(iEnt);
/* Zwraca '1' jesli na serwerze znajduja sie wiezyczki, '0' jesli ich nie ma */
native td_is_turret_on_server();
/* Zwraca '1' jesli dana wiezyczka posiada 'ranger' */
native td_is_ranger_exists(turret_entity);
/* Zwraca maksymalna ilosc wiezyczek, jaka moze posiadac gracz */
native td_get_max_turrets_per_player();
/* Zwraca maksymalna ilosc wiezyczek, jaka moze byc na serwerze */
native td_get_max_server_turrets();
/* Returns player totem */
native td_turrets_get_player_totem(index);
/* Sets player totem */
native td_turrets_set_player_totem(index, value);