Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*================================================================================
- ----------------------------
- -*- [ZP] HUD Information -*-
- ----------------------------
- This plugin is part of Zombie Plague Mod and is distributed under the
- terms of the GNU General Public License. Check ZP_ReadMe.txt for details.
- ================================================================================*/
- #include <amxmodx>
- #include <fun>
- #include <mod>
- #include <nvault>
- #include <engine>
- #include <cstrike>
- #include <amxmisc>
- #include <fakemeta>
- #include <hamsandwich>
- #include <zp50_class_human>
- #include <zp50_class_zombie>
- #define LIBRARY_NEMESIS "zp50_class_nemesis"
- #include <zp50_class_nemesis>
- #define LIBRARY_ASSASSIN "zp50_class_assassin"
- #include <zp50_class_assassin>
- #define LIBRARY_SURVIVOR "zp50_class_survivor"
- #include <zp50_class_survivor>
- #define LIBRARY_SNIPER "zp50_class_sniper"
- #include <zp50_class_sniper>
- #define LIBRARY_AMMOPACKS "zp50_ammopacks"
- #include <zp50_ammopacks>
- const Float:HUD_SPECT_X = 0.6
- const Float:HUD_SPECT_Y = 0.1
- const Float:HUD_STATS_X = 0.12
- const Float:HUD_STATS_Y = 0.07
- const HUD_STATS_ZOMBIE_R = 200
- const HUD_STATS_ZOMBIE_G = 250
- const HUD_STATS_ZOMBIE_B = 0
- const HUD_STATS_HUMAN_R = 0
- const HUD_STATS_HUMAN_G = 180
- const HUD_STATS_HUMAN_B = 255
- const HUD_STATS_SPEC_R = 255
- const HUD_STATS_SPEC_G = 255
- const HUD_STATS_SPEC_B = 255
- #define TASK_SHOWHUD 100
- #define ID_SHOWHUD (taskid - TASK_SHOWHUD)
- #define Player_Hud 1994
- const PEV_SPEC_TARGET = pev_iuser2
- new g_MsgSync
- public plugin_init()
- {
- register_plugin("[ZP] HUD Information", ZP_VERSION_STRING, "ZP Dev Team")
- g_MsgSync = CreateHudSyncObj()
- }
- public plugin_natives()
- {
- set_module_filter("module_filter")
- set_native_filter("native_filter")
- }
- public module_filter(const module[])
- {
- if (equal(module, LIBRARY_NEMESIS) || equal(module, LIBRARY_ASSASSIN) || equal(module, LIBRARY_SURVIVOR) || equal(module, LIBRARY_SNIPER) || equal(module, LIBRARY_AMMOPACKS))
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- public native_filter(const name[], index, trap)
- {
- if (!trap)
- return PLUGIN_HANDLED;
- return PLUGIN_CONTINUE;
- }
- public client_putinserver(id)
- {
- if (!is_user_bot(id))
- {
- // Set the custom HUD display task
- set_task(1.0, "ShowHUD", id+TASK_SHOWHUD, _, _, "b")
- }
- }
- // Show HUD Task
- public ShowHUD(taskid)
- {
- new player = ID_SHOWHUD
- // Player dead?
- if (!is_user_alive(player))
- {
- // Get spectating target
- player = pev(player, PEV_SPEC_TARGET)
- // Target not alive
- if (!is_user_alive(player))
- return;
- }
- // Format classname
- static class_name[32], transkey[64]
- new red, green, blue
- if (zp_core_is_zombie(player)) // zombies
- {
- red = HUD_STATS_ZOMBIE_R
- green = HUD_STATS_ZOMBIE_G
- blue = HUD_STATS_ZOMBIE_B
- // Nemesis Class loaded?
- if (LibraryExists(LIBRARY_NEMESIS, LibType_Library) && zp_class_nemesis_get(player))
- formatex(class_name, charsmax(class_name), "%L", ID_SHOWHUD, "CLASS_NEMESIS")
- // Assassin Class loaded?
- else if (LibraryExists(LIBRARY_ASSASSIN, LibType_Library) && zp_class_assassin_get(player))
- formatex(class_name, charsmax(class_name), "%L", ID_SHOWHUD, "CLASS_ASSASSIN")
- else
- {
- zp_class_zombie_get_name(zp_class_zombie_get_current(player), class_name, charsmax(class_name))
- // ML support for class name
- formatex(transkey, charsmax(transkey), "ZOMBIENAME %s", class_name)
- if (GetLangTransKey(transkey) != TransKey_Bad) formatex(class_name, charsmax(class_name), "%L", ID_SHOWHUD, transkey)
- }
- }
- else // humans
- {
- red = HUD_STATS_HUMAN_R
- green = HUD_STATS_HUMAN_G
- blue = HUD_STATS_HUMAN_B
- // Survivor Class loaded?
- if (LibraryExists(LIBRARY_SURVIVOR, LibType_Library) && zp_class_survivor_get(player))
- formatex(class_name, charsmax(class_name), "%L", ID_SHOWHUD, "CLASS_SURVIVOR")
- // Sniper Class loaded?
- else if (LibraryExists(LIBRARY_SNIPER, LibType_Library) && zp_class_sniper_get(player))
- formatex(class_name, charsmax(class_name), "%L", ID_SHOWHUD, "CLASS_SNIPER")
- else
- {
- zp_class_human_get_name(zp_class_human_get_current(player), class_name, charsmax(class_name))
- // ML support for class name
- formatex(transkey, charsmax(transkey), "HUMANNAME %s", class_name)
- if (GetLangTransKey(transkey) != TransKey_Bad) formatex(class_name, charsmax(class_name), "%L", ID_SHOWHUD, transkey)
- }
- }
- // Spectating someone else?
- if (player != ID_SHOWHUD)
- {
- new player_name[32]
- get_user_name(player, player_name, charsmax(player_name))
- // Show name, health, class, and money
- set_hudmessage(HUD_STATS_SPEC_R, HUD_STATS_SPEC_G, HUD_STATS_SPEC_B, HUD_SPECT_X, HUD_SPECT_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
- if (LibraryExists(LIBRARY_AMMOPACKS, LibType_Library))
- ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "**//--------------------------------\\^n**|| [%L: %s]^n**|| [Health: %d]^n**|| [%L %s]^n**|| [%L %d]^n**|| [Level: %i]^n**|| [Exp: %i]^n**|| [Points: %i]^nThis is an ugly line^nAnothor ugly line^n**\\--------------------------------//**", ID_SHOWHUD, "SPECTATING", player_name, get_user_health(player), ID_SHOWHUD, "CLASS_CLASS", class_name, ID_SHOWHUD, "AMMO_PACKS1", zp_ammopacks_get(player), get_user_level(player), get_user_xp(player), get_user_point(player))
- else
- ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "%L: %s^nHP: %d - %L %s - %L $ %d", ID_SHOWHUD, "SPECTATING", player_name, get_user_health(player), ID_SHOWHUD, "CLASS_CLASS", class_name, ID_SHOWHUD, "MONEY1", cs_get_user_money(player))
- }
- else
- {
- // Show health, class
- set_hudmessage(red, green, blue, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
- if (LibraryExists(LIBRARY_AMMOPACKS, LibType_Library))
- ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "**//--------------------------------\\**^n**|| [Buxna PalanKus]^n**|| [Health: %d]^n**|| [%L %s]^n**|| [%L %d]^n**|| [Level: %i]^n**|| [Exp: %i]^n**|| [Points: %i]^nThis is an ugly line^nAnothor ugly line^n**\\--------------------------------//**", get_user_health(ID_SHOWHUD), ID_SHOWHUD, "CLASS_CLASS",
- class_name, ID_SHOWHUD, "AMMO_PACKS1", zp_ammopacks_get(ID_SHOWHUD), get_user_level(ID_SHOWHUD), get_user_xp(ID_SHOWHUD), get_user_point(ID_SHOWHUD))
- else
- ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "HP: %d - %L %s", get_user_health(ID_SHOWHUD), ID_SHOWHUD, "CLASS_CLASS", class_name)
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement