Solved Lvl win frags

Unpaid Requests, Public Plugins
Post Reply
User avatar
sPe3doN
Senior Member
Senior Member
Algeria
Posts: 258
Joined: 7 years ago
Contact:

Lvl win frags

#1

Post by sPe3doN » 5 years ago

Hello
I have idea can any one add frags for lvl if some one have level 10 and he escape he will get 10 frags
Level 11 = 11 frag
Level 20 = 20 frag
My lvl plugin

Code: Select all

#include <zombie_escape>
 
// Defines
#define MAX_LEVEL 50
#define MAX_XP 500000
#define TASK_SHOWHUD 2020
#define ID_SHOWHUD (taskid - TASK_SHOWHUD)
#define LEVELUP "levelup_ZE/ze_levelup.wav"
 
// Constants
new const g_szLevelsVault[] = "Levels"
new const g_szRanksVault[] = "Ranks"
 
// Messages
const Float:HUD_SPECT_X = -1.0
const Float:HUD_SPECT_Y = 0.70
const Float:HUD_STATS_X = -1.0
const Float:HUD_STATS_Y = 0.90
 
const HUD_STATS_ZOMBIE_R = 200
const HUD_STATS_ZOMBIE_G = 220
const HUD_STATS_ZOMBIE_B = 0
 
const HUD_STATS_HUMAN_R = 0
const HUD_STATS_HUMAN_G = 200
const HUD_STATS_HUMAN_B = 210
 
const HUD_STATS_SPEC_R = 100
const HUD_STATS_SPEC_G = 100
const HUD_STATS_SPEC_B = 100
 
// Variables
new g_iLevel[33],
    g_iXP[33],
    g_iMaxXP[33],
    Float:g_fDamage[33],
    g_MsgSync,
    g_iLevelsVaultHandle,
    g_iRanksVaultHandle,
    bool:g_bIsDoubleHours
 
// Cvars
new g_pCvarZombieInfect,
    g_pCvarEscapeSuccess,
    g_pCvarEnableDamage,
    g_pCvarRequiredDamage,
    g_pCvarDamageAward,
    g_pCvarStartXP,
    g_pCvarMaxLevelsIncrement,
    g_pCvarMaxXPFirstLevel,
    g_pCvarPercentageStyle,
    g_pCvarStartFromZero,
    g_pCvarAddCommas,
    g_pCvarLevelEffects,
    g_pCvarDoubleXP
 
public plugin_natives()
{
    register_native("ze_get_user_xp", "native_ze_get_user_xp", 1)
    register_native("ze_set_user_xp", "native_ze_set_user_xp", 1)
    register_native("ze_get_user_level", "native_ze_get_user_level", 1)
    register_native("ze_set_user_level", "native_ze_set_user_level", 1)
    register_native("ze_get_user_max_xp", "native_ze_get_user_max_xp", 1)
    register_native("ze_set_user_max_xp", "native_ze_set_user_max_xp", 1)
}
 
public plugin_precache()
{
    precache_sound(LEVELUP)
}
 
public plugin_init()
{
    register_plugin("[ZE] Level-XP System", "1.8", "Raheem/JaCk")
   
    // Hook Chains
    RegisterHookChain(RG_CBasePlayer_TakeDamage, "Fw_TakeDamage_Post", 1)
   
    // Cvars
    g_pCvarZombieInfect = register_cvar("ze_zombie_infect", "3")
    g_pCvarEscapeSuccess = register_cvar("ze_escape_success", "5")
    g_pCvarEnableDamage = register_cvar("ze_enable_dmg", "1")
    g_pCvarRequiredDamage = register_cvar("ze_required_dmg", "50.0")
    g_pCvarDamageAward = register_cvar("ze_dmg_award", "3")
    g_pCvarStartXP = register_cvar("ze_start_xp", "50")
    g_pCvarMaxLevelsIncrement = register_cvar("ze_maxlevels_increment", "2.0")
    g_pCvarMaxXPFirstLevel = register_cvar("ze_max_xp_first_level", "100")
    g_pCvarPercentageStyle = register_cvar("ze_enable_percentage_style", "1")
    g_pCvarStartFromZero = register_cvar("ze_new_level_zero_xp", "0")
    g_pCvarAddCommas = register_cvar("ze_add_commas_to_xp", "1")
    g_pCvarLevelEffects = register_cvar("ze_level_up_effects", "1")
    g_pCvarDoubleXP = register_cvar("ze_double_xp", "9-12")
   
    // Messages
    g_MsgSync = CreateHudSyncObj()
}
 
public client_putinserver(id)
{
    if(is_user_hltv(id) || is_user_bot(id))
        return
   
    // Just 1 second delay
    set_task(1.0, "DelayLoad", id)
 
    // Other tasks
    set_task(1.0, "Show_Hud", id+TASK_SHOWHUD, _, _, "b")
    set_task(0.1, "Check_MaxXP", id, _, _, "b")
}
 
public DelayLoad(id)
{
    // Load his data
    LoadData(id)
}
 
public client_disconnected(id)
{
    if(is_user_hltv(id) || is_user_bot(id))
        return
       
    remove_task(id+TASK_SHOWHUD)
    remove_task(id)
}
 
public Check_MaxXP(id)
{
    new iCurrentMaxXP = g_iMaxXP[id]
   
    new iMaxXP = get_pcvar_num(g_pCvarMaxXPFirstLevel)
   
    for (new i = 1; i <= g_iLevel[id]; i++)
    {
        iMaxXP = floatround(float(iMaxXP) * get_pcvar_float(g_pCvarMaxLevelsIncrement))
    }
   
    if (iCurrentMaxXP != iMaxXP)
    {
        g_iMaxXP[id] = iMaxXP
    }
}
 
public Show_Hud(taskid)
{  
    new iPlayer = ID_SHOWHUD
   
    if (!is_user_alive(iPlayer))
    {
        iPlayer = pev(iPlayer, pev_iuser2)
       
        if (!is_user_alive(iPlayer))
            return
    }
   
    if (get_pcvar_num(g_pCvarPercentageStyle) != 0)
    {
        if(iPlayer != ID_SHOWHUD)
        {
            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)
            ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %0.2f %", g_iLevel[iPlayer], (float(g_iXP[iPlayer])/float(g_iMaxXP[iPlayer])) * 100.0)
        }
        else if (ze_is_user_zombie(iPlayer))
        {
            set_hudmessage(HUD_STATS_ZOMBIE_R, HUD_STATS_ZOMBIE_G, HUD_STATS_ZOMBIE_B, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
            ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %0.2f %", g_iLevel[ID_SHOWHUD], (float(g_iXP[ID_SHOWHUD])/float(g_iMaxXP[ID_SHOWHUD])) * 100.0)
        }
        else
        {
            set_hudmessage(HUD_STATS_HUMAN_R, HUD_STATS_HUMAN_G, HUD_STATS_HUMAN_B, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
            ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %0.2f %", g_iLevel[ID_SHOWHUD], (float(g_iXP[ID_SHOWHUD])/float(g_iMaxXP[ID_SHOWHUD])) * 100.0)
        }
    }
    else
    {
        if(iPlayer != ID_SHOWHUD)
        {
            if (get_pcvar_num(g_pCvarAddCommas) == 1)
            {
                new szSpecXP[15], szSpecMaxXP[15]
               
                AddCommas(g_iXP[iPlayer], szSpecXP, charsmax(szSpecXP))
                AddCommas(g_iMaxXP[iPlayer], szSpecMaxXP, charsmax(szSpecMaxXP))
               
                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)
                ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %s/%s", g_iLevel[iPlayer], szSpecXP, szSpecMaxXP)
            }
            else
            {
                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)
                ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %d/%d", g_iLevel[iPlayer], g_iXP[iPlayer], g_iMaxXP[iPlayer])
            }  
        }
        else if (ze_is_user_zombie(iPlayer))
        {
            if (get_pcvar_num(g_pCvarAddCommas) == 1)
            {
                new szZombieXP[15], szZombieMaxXP[15]
               
                AddCommas(g_iXP[ID_SHOWHUD], szZombieXP, charsmax(szZombieXP))
                AddCommas(g_iMaxXP[ID_SHOWHUD], szZombieMaxXP, charsmax(szZombieMaxXP))
               
                set_hudmessage(HUD_STATS_ZOMBIE_R, HUD_STATS_ZOMBIE_G, HUD_STATS_ZOMBIE_B, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
                ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %s/%s", g_iLevel[ID_SHOWHUD], szZombieXP, szZombieMaxXP)
            }
            else
            {
                set_hudmessage(HUD_STATS_ZOMBIE_R, HUD_STATS_ZOMBIE_G, HUD_STATS_ZOMBIE_B, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
                ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %d/%d", g_iLevel[ID_SHOWHUD], g_iXP[ID_SHOWHUD], g_iMaxXP[ID_SHOWHUD])
            }
        }
        else
        {
            if (get_pcvar_num(g_pCvarAddCommas) == 1)
            {
                new szHumanXP[15], szHumanMaxXP[15]
               
                AddCommas(g_iXP[ID_SHOWHUD], szHumanXP, charsmax(szHumanXP))
                AddCommas(g_iMaxXP[ID_SHOWHUD], szHumanMaxXP, charsmax(szHumanMaxXP))
               
                set_hudmessage(HUD_STATS_HUMAN_R, HUD_STATS_HUMAN_G, HUD_STATS_HUMAN_B, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
                ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %s/%s", g_iLevel[ID_SHOWHUD], szHumanXP, szHumanMaxXP)
            }
            else
            {
                set_hudmessage(HUD_STATS_HUMAN_R, HUD_STATS_HUMAN_G, HUD_STATS_HUMAN_B, HUD_STATS_X, HUD_STATS_Y, 0, 6.0, 1.1, 0.0, 0.0, -1)
                ShowSyncHudMsg(ID_SHOWHUD, g_MsgSync, "Level: %d | XP: %d/%d", g_iLevel[ID_SHOWHUD], g_iXP[ID_SHOWHUD], g_iMaxXP[ID_SHOWHUD])
            }
        }
    }
}
 
public ze_roundend(WinTeam)
{
    if (WinTeam == ZE_TEAM_HUMAN)
    {
        for(new id = 1; id <= get_member_game(m_nMaxPlayers); id++)
        {
            if (!is_user_alive(id) || get_member(id, m_iTeam) == TEAM_TERRORIST)
                continue
           
            DoubleHours()
           
            if (g_bIsDoubleHours)
            {
                g_iXP[id] = g_iXP[id] + (get_pcvar_num(g_pCvarEscapeSuccess) * 2)
            }
            else
            {
                g_iXP[id] += get_pcvar_num(g_pCvarEscapeSuccess)
            }
           
            SaveData(id)
            Check_User_Level(id)
        }
    }
   
    remove_task(TASK_SHOWHUD)
}
 
public Check_User_Level(id)
{
    if(!is_user_connected(id))
        return
 
    if(g_iXP[id] >= g_iMaxXP[id])
    {
        if (get_pcvar_num(g_pCvarStartFromZero) == 1)
        {
            g_iXP[id] = 0
        }
       
        new szName[32]
        g_iLevel[id] ++
        g_iMaxXP[id] = floatround(float(g_iMaxXP[id]) * get_pcvar_float(g_pCvarMaxLevelsIncrement))
        get_user_name(id, szName, charsmax(szName))
        ze_colored_print(0, "!g%s !tNow in Level %i!y!", szName, g_iLevel[id])
       
        SaveData(id)
       
        PlaySound(id, LEVELUP)
       
        if (get_pcvar_num(g_pCvarLevelEffects) != 0)
        {
            // Screen Fade
            message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, id)
            write_short(4096*2)
            write_short(4096*5)
            write_short(0x0001)
            write_byte(random(256))
            write_byte(random(256))
            write_byte(random(256))
            write_byte(150)
            message_end()
           
            // Screen Shake
            message_begin(MSG_ONE, get_user_msgid("ScreenShake"), {0,0,0}, id)
            write_short(255<<14)
            write_short(10<<14)
            write_short(255<<14)
            message_end()
        }
    }
}
 
public ze_user_infected(iVictim, iInfector)
{
    if (iInfector == 0)
        return
   
    DoubleHours()
   
    if (g_bIsDoubleHours)
    {
        g_iXP[iInfector] = g_iXP[iInfector] + (get_pcvar_num(g_pCvarZombieInfect) * 2)
    }
    else
    {
        g_iXP[iInfector] += get_pcvar_num(g_pCvarZombieInfect)
    }
   
    SaveData(iInfector)
    Check_User_Level(iInfector)
}
 
public Fw_TakeDamage_Post(iVictim, iInflictor, iAttacker, Float:fDamage, bitsDamageType)
{
    // Player Damage Himself
    if (iVictim == iAttacker || !is_user_alive(iVictim) || !is_user_alive(iAttacker) || ze_is_user_zombie(iAttacker) || !get_pcvar_num(g_pCvarEnableDamage))
        return HC_CONTINUE
   
    // Same Team?
    if (get_member(iAttacker, m_iTeam) == get_member(iVictim, m_iTeam))
        return HC_CONTINUE
   
    // Store Damage For every Player
    g_fDamage[iAttacker] += fDamage
   
    // Damage Calculator Equal or Higher than needed damage
    if (g_fDamage[iAttacker] >= get_pcvar_float(g_pCvarRequiredDamage))
    {
        // Give Player The Coins
        DoubleHours()
       
        if (g_bIsDoubleHours)
        {
            g_iXP[iAttacker] = g_iXP[iAttacker] + (get_pcvar_num(g_pCvarDamageAward) * 2)
        }
        else
        {
            g_iXP[iAttacker] += get_pcvar_num(g_pCvarDamageAward)
        }
       
        SaveData(iAttacker)
        Check_User_Level(iAttacker)
       
        // Rest The Damage Calculator
        g_fDamage[iAttacker] = 0.0
    }
    return HC_CONTINUE
}
 
public SaveData(id)
{
    new szAuthID[35], szName[32]
    get_user_authid(id, szAuthID, charsmax(szAuthID))
    get_user_name(id, szName, charsmax(szName))
   
    // Set Him to max if he Higher than Max Value
    if(g_iLevel[id] > MAX_LEVEL)
    {
        g_iLevel[id] = MAX_LEVEL
    }
   
    if(g_iXP[id] > MAX_XP)
    {
        g_iXP[id] = MAX_XP
    }
   
    new szData[256]
    formatex(szData , charsmax(szData), "%i %i %i", g_iLevel[id], g_iXP[id], g_iMaxXP[id])
   
    // Open the Vaults
    g_iLevelsVaultHandle = nvault_open(g_szLevelsVault)
    g_iRanksVaultHandle = nvault_open(g_szRanksVault)
 
    // Saves His Data
    nvault_set(g_iLevelsVaultHandle, szAuthID, szData)
    nvault_set(g_iRanksVaultHandle, szAuthID, szName)
   
    // Close Vaults
    nvault_close(g_iLevelsVaultHandle)
    nvault_close(g_iRanksVaultHandle)
}
 
public LoadData(id)
{
    new szData[256], szAuthID[35], szName[32]
   
    get_user_authid(id, szAuthID, charsmax(szAuthID))
    get_user_name(id, szName, charsmax(szName))
   
    // Useless Variable
    new iTimestamp, iExists
   
    // Open the Vault
    g_iLevelsVaultHandle = nvault_open(g_szLevelsVault)
   
    iExists = nvault_lookup(g_iLevelsVaultHandle, szAuthID, szData, charsmax(szData), iTimestamp)
   
    // Close Vault
    nvault_close(g_iLevelsVaultHandle)
   
    if (!iExists)
    {
        g_iLevel[id] = 0
        g_iXP[id] = get_pcvar_num(g_pCvarStartXP)
        g_iMaxXP[id] = get_pcvar_num(g_pCvarMaxXPFirstLevel)
        SaveData(id)
    }
    else
    {
        new iLevel[32], iXP[32], iMaxLevel[32]
        parse(szData, iLevel, 31, iXP, 31, iMaxLevel, 31)
       
        g_iLevel[id] = str_to_num(iLevel)
        g_iXP[id] = str_to_num(iXP)
        g_iMaxXP[id] = str_to_num(iMaxLevel)
    }
}
 
public native_ze_get_user_xp(id)
{
    if(!is_user_connected(id))
    {
        log_error(AMX_ERR_NATIVE, "[ZE] Invalid Player id (%d)", id)
        return false;
    }
   
    return g_iXP[id]
}
 
public native_ze_set_user_xp(id, amount)
{
    if(!is_user_connected(id))
    {
        log_error(AMX_ERR_NATIVE, "[ZE] Invalid Player id (%d)", id)
        return false;
    }
   
    DoubleHours()
   
    new iAddedAmount = amount - g_iXP[id]
   
    if (g_bIsDoubleHours)
    {
        g_iXP[id] = g_iXP[id] + (iAddedAmount * 2)
    }
    else
    {
        g_iXP[id] = amount
    }
 
    Check_User_Level(id)
    SaveData(id)
    return true;
}
 
public native_ze_get_user_level(id)
{
    if(!is_user_connected(id))
    {
        log_error(AMX_ERR_NATIVE, "[ZE] Invalid Player id (%d)", id)
        return false;
    }
   
    return g_iLevel[id]
}
 
public native_ze_set_user_level(id, amount)
{
    if(!is_user_connected(id))
    {
        log_error(AMX_ERR_NATIVE, "[ZE] Invalid Player id (%d)", id)
        return false;
    }
   
    g_iLevel[id] = amount
   
    if (get_pcvar_num(g_pCvarStartFromZero) == 1)
    {
        g_iXP[id] = 0
    }
   
    SaveData(id)
   
    return true;
}
 
public native_ze_get_user_max_xp(id)
{
    if(!is_user_connected(id))
    {
        log_error(AMX_ERR_NATIVE, "[ZE] Invalid Player id (%d)", id)
        return false;
    }
   
    return g_iMaxXP[id]
}
 
public native_ze_set_user_max_xp(id, amount)
{
    if(!is_user_connected(id))
    {
        log_error(AMX_ERR_NATIVE, "[ZE] Invalid Player id (%d)", id)
        return false;
    }
   
    g_iMaxXP[id] = amount
   
    SaveData(id)
   
    return true;
}
 
stock DoubleHours()
{
    new szTime[3], szDoubleHours[32], szDoubleHours_Start[32], szDoubleHours_End[32]
    get_time("%H", szTime, charsmax(szTime))
   
    get_pcvar_string(g_pCvarDoubleXP, szDoubleHours, charsmax(szDoubleHours))
   
    for (new ch = 0; ch <= charsmax(szDoubleHours); ch++)
    {
        if (szDoubleHours[ch] == '-')
            szDoubleHours[ch] = ' '
    }
   
    parse(szDoubleHours, szDoubleHours_Start, charsmax(szDoubleHours_Start), szDoubleHours_End, charsmax(szDoubleHours_End))
   
    new iTime, iDoubleHourStart, iDoubleHourEnd
   
    iTime = str_to_num(szTime)
    iDoubleHourStart = str_to_num(szDoubleHours_Start)
    iDoubleHourEnd = str_to_num(szDoubleHours_End)
   
    if(iDoubleHourEnd > iTime >= iDoubleHourStart)
    {
        g_bIsDoubleHours = true
    }
    else
    {
        g_bIsDoubleHours = false
    }
}
Image

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#2

Post by Raheem » 5 years ago

Here ze_effects_frags.sma:

  1. #include <zombie_escape>
  2. #include <ze_levels>
  3.  
  4. // Variables
  5. new g_iMaxClients
  6.  
  7. // Cvars
  8. new g_pCvarHumanInfectedFrags,
  9.     g_pCvarEscapeSuccessFrags,
  10.     g_pCvarInfectionDeaths
  11.  
  12. public plugin_init()
  13. {
  14.     register_plugin("[ZE] Frags Awards/Death Effects", ZE_VERSION, AUTHORS)
  15.    
  16.     // Cvars
  17.     g_pCvarHumanInfectedFrags = register_cvar("ze_human_infected_frags", "1")
  18.     g_pCvarInfectionDeaths = register_cvar("ze_infection_deaths", "1")
  19.     g_pCvarEscapeSuccessFrags = register_cvar("ze_escape_success_frags", "3")
  20.    
  21.     // Static Values
  22.     g_iMaxClients = get_member_game(m_nMaxPlayers)
  23. }
  24.  
  25. public ze_user_infected(iVictim, iInfector)
  26. {
  27.     if (iInfector == 0) // Block Awards for Zombies Chosen by the Server
  28.         return
  29.    
  30.     // Award Zombie Who infected, And Increase Deaths of the infected human
  31.     UpdateFrags(iInfector, iVictim, get_pcvar_num(g_pCvarHumanInfectedFrags), get_pcvar_num(g_pCvarInfectionDeaths), 1)
  32.    
  33.     // Adding Infection icon on Victim Screen
  34.     InfectionIcon(iVictim)
  35.    
  36.     // Fix Dead Attribute (Delay needed)
  37.     set_task(0.1, "Fix_DeadAttrib", _, _, _, "a", 6)
  38. }
  39.  
  40. public ze_roundend(WinTeam)
  41. {
  42.     if (WinTeam == ZE_TEAM_HUMAN)
  43.     {
  44.         for (new i = 1; i <= g_iMaxClients; i++)
  45.         {
  46.             // Skip All Dead Players or Zombies
  47.             if (!is_user_alive(i) || get_member(i, m_iTeam) == TEAM_TERRORIST)
  48.                 continue
  49.            
  50.             // + Frags for All humans Who are Alive
  51.             if (ze_get_user_level(i) >= 11 && ze_get_user_level(i) < 20)
  52.             {
  53.                 UpdateFrags(i, 0, 11, 0, 1)
  54.             }
  55.             else if (ze_get_user_level(i) >= 20)
  56.             {
  57.                 UpdateFrags(i, 0, 20, 0, 1)
  58.             }
  59.             else
  60.             {
  61.                 UpdateFrags(i, 0, get_pcvar_num(g_pCvarEscapeSuccessFrags), 0, 1)
  62.             }
  63.         }
  64.     }
  65. }
  66.  
  67. public Fix_DeadAttrib()
  68. {
  69.     for (new i = 1; i <= g_iMaxClients; i++)
  70.     {
  71.         // Skip All Dead And Humans
  72.         if (!is_user_alive(i) || get_member(i, m_iTeam) == TEAM_CT)
  73.             continue
  74.        
  75.         // Fix the Dead Attribute
  76.         FixDeadAttrib(i)
  77.     }
  78. }
Last edited by Raheem 5 years ago, edited 1 time in total.
Reason: id --> i
He who fails to plan is planning to fail

User avatar
Luxurious
Mod Tester
Mod Tester
Egypt
Posts: 177
Joined: 6 years ago
Location: Egypt
Contact:

#3

Post by Luxurious » 5 years ago

Code: Select all

//AMXXPC compile.exe
// by the AMX Mod X Dev Team


//// ze_effects_frags.sma
//
// C:\Users\ana_m\Desktop\addons\Compiler v1.8.3\scripting\ze_effects_frags.sma(51) : error 017: undefined symbol "id"
// C:\Users\ana_m\Desktop\addons\Compiler v1.8.3\scripting\ze_effects_frags.sma(55) : error 017: undefined symbol "id"
//
// 2 Errors.
// Could not locate output file C:\Users\ana_m\Desktop\addons\Compiler v1.8.3\scripting\compiled\ze_effects_frags.amx (compile failed).
//
// Compilation Time: 1.14 sec
// ----------------------------------------

Press enter to exit ...


DRK Zombie-Escape V1.6
IP : 81.169.153.129:27015

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#4

Post by Raheem » 5 years ago

Fixed.
He who fails to plan is planning to fail

User avatar
sPe3doN
Senior Member
Senior Member
Algeria
Posts: 258
Joined: 7 years ago
Contact:

#5

Post by sPe3doN » 5 years ago

Raheem wrote: 5 years ago Here ze_effects_frags.sma:

  1. #include <zombie_escape>
  2. #include <ze_levels>
  3.  
  4. // Variables
  5. new g_iMaxClients
  6.  
  7. // Cvars
  8. new g_pCvarHumanInfectedFrags,
  9.     g_pCvarEscapeSuccessFrags,
  10.     g_pCvarInfectionDeaths
  11.  
  12. public plugin_init()
  13. {
  14.     register_plugin("[ZE] Frags Awards/Death Effects", ZE_VERSION, AUTHORS)
  15.    
  16.     // Cvars
  17.     g_pCvarHumanInfectedFrags = register_cvar("ze_human_infected_frags", "1")
  18.     g_pCvarInfectionDeaths = register_cvar("ze_infection_deaths", "1")
  19.     g_pCvarEscapeSuccessFrags = register_cvar("ze_escape_success_frags", "3")
  20.    
  21.     // Static Values
  22.     g_iMaxClients = get_member_game(m_nMaxPlayers)
  23. }
  24.  
  25. public ze_user_infected(iVictim, iInfector)
  26. {
  27.     if (iInfector == 0) // Block Awards for Zombies Chosen by the Server
  28.         return
  29.    
  30.     // Award Zombie Who infected, And Increase Deaths of the infected human
  31.     UpdateFrags(iInfector, iVictim, get_pcvar_num(g_pCvarHumanInfectedFrags), get_pcvar_num(g_pCvarInfectionDeaths), 1)
  32.    
  33.     // Adding Infection icon on Victim Screen
  34.     InfectionIcon(iVictim)
  35.    
  36.     // Fix Dead Attribute (Delay needed)
  37.     set_task(0.1, "Fix_DeadAttrib", _, _, _, "a", 6)
  38. }
  39.  
  40. public ze_roundend(WinTeam)
  41. {
  42.     if (WinTeam == ZE_TEAM_HUMAN)
  43.     {
  44.         for (new i = 1; i <= g_iMaxClients; i++)
  45.         {
  46.             // Skip All Dead Players or Zombies
  47.             if (!is_user_alive(i) || get_member(i, m_iTeam) == TEAM_TERRORIST)
  48.                 continue
  49.            
  50.             // + Frags for All humans Who are Alive
  51.             if (ze_get_user_level(i) >= 11 && ze_get_user_level(i) < 20)
  52.             {
  53.                 UpdateFrags(i, 0, 11, 0, 1)
  54.             }
  55.             else if (ze_get_user_level(i) >= 20)
  56.             {
  57.                 UpdateFrags(i, 0, 20, 0, 1)
  58.             }
  59.             else
  60.             {
  61.                 UpdateFrags(i, 0, get_pcvar_num(g_pCvarEscapeSuccessFrags), 0, 1)
  62.             }
  63.         }
  64.     }
  65. }
  66.  
  67. public Fix_DeadAttrib()
  68. {
  69.     for (new i = 1; i <= g_iMaxClients; i++)
  70.     {
  71.         // Skip All Dead And Humans
  72.         if (!is_user_alive(i) || get_member(i, m_iTeam) == TEAM_CT)
  73.             continue
  74.        
  75.         // Fix the Dead Attribute
  76.         FixDeadAttrib(i)
  77.     }
  78. }
Raheem max lvl in my srw 30 is that possible to add frags for each lvl
lvl 1 = 1 frags
lvl 2 = 2 frags
lvl 3 = 3 frags
To
Lvl 30 = 30 frag
Image

User avatar
Raheem
Mod Developer
Mod Developer
Posts: 2214
Joined: 7 years ago
Contact:

#6

Post by Raheem » 5 years ago

Yes possible, here:

  1. #include <zombie_escape>
  2. #include <ze_levels>
  3.  
  4. // Variables
  5. new g_iMaxClients
  6.  
  7. // Cvars
  8. new g_pCvarHumanInfectedFrags,
  9.     g_pCvarEscapeSuccessFrags,
  10.     g_pCvarInfectionDeaths
  11.  
  12. public plugin_init()
  13. {
  14.     register_plugin("[ZE] Frags Awards/Death Effects", ZE_VERSION, AUTHORS)
  15.    
  16.     // Cvars
  17.     g_pCvarHumanInfectedFrags = register_cvar("ze_human_infected_frags", "1")
  18.     g_pCvarInfectionDeaths = register_cvar("ze_infection_deaths", "1")
  19.     g_pCvarEscapeSuccessFrags = register_cvar("ze_escape_success_frags", "3")
  20.    
  21.     // Static Values
  22.     g_iMaxClients = get_member_game(m_nMaxPlayers)
  23. }
  24.  
  25. public ze_user_infected(iVictim, iInfector)
  26. {
  27.     if (iInfector == 0) // Block Awards for Zombies Chosen by the Server
  28.         return
  29.    
  30.     // Award Zombie Who infected, And Increase Deaths of the infected human
  31.     UpdateFrags(iInfector, iVictim, get_pcvar_num(g_pCvarHumanInfectedFrags), get_pcvar_num(g_pCvarInfectionDeaths), 1)
  32.    
  33.     // Adding Infection icon on Victim Screen
  34.     InfectionIcon(iVictim)
  35.    
  36.     // Fix Dead Attribute (Delay needed)
  37.     set_task(0.1, "Fix_DeadAttrib", _, _, _, "a", 6)
  38. }
  39.  
  40. public ze_roundend(WinTeam)
  41. {
  42.     if (WinTeam == ZE_TEAM_HUMAN)
  43.     {
  44.         for (new i = 1; i <= g_iMaxClients; i++)
  45.         {
  46.             // Skip All Dead Players or Zombies
  47.             if (!is_user_alive(i) || get_member(i, m_iTeam) == TEAM_TERRORIST)
  48.                 continue
  49.            
  50.             // + Frags for All humans Who are Alive
  51.             UpdateFrags(i, 0, ze_get_user_level(i), 0, 1)
  52.         }
  53.     }
  54. }
  55.  
  56. public Fix_DeadAttrib()
  57. {
  58.     for (new i = 1; i <= g_iMaxClients; i++)
  59.     {
  60.         // Skip All Dead And Humans
  61.         if (!is_user_alive(i) || get_member(i, m_iTeam) == TEAM_CT)
  62.             continue
  63.        
  64.         // Fix the Dead Attribute
  65.         FixDeadAttrib(i)
  66.     }
  67. }
He who fails to plan is planning to fail

Post Reply

Create an account or sign in to join the discussion

You need to be a member in order to post a reply

Create an account

Not a member? register to join our community
Members can start their own topics & subscribe to topics
It’s free and only takes a minute

Register

Sign in

Who is online

Users browsing this forum: No registered users and 1 guest