JAKuT Posted May 29, 2008 Report Share Posted May 29, 2008 Lūdzu palīdziet man kāds. Kā uz šitā war3 rc10 var uzlikt savu exp systemu... nu nevis lai tur baigi maz krāt vaig, bet daudz. jo es negribu lai jau 1 dienā ir 10 lvl Pimērs: 1lvl-2500 2lvl-7000 3lvl-25000 4lvl-60000 5lvl-125000 6lvl-240000 7lvl-420000 8lvl-600000 9lvl-800000 10lvl-1000000 Kā lai es tā uztaisu? varat lūdzu palīdzēt Un pateikt kurā failā lai es mainu exp lai tā būtu, jo vsp nesaprotu! un vēl par shopmenu un shopmenu2 ir 2 screen es gribu lai tā būtu es itkā uztaisīju lai tā rakstas, bet par to naudas izmaksu kur jādara?? Link to comment Share on other sites More sharing options...
JAKuT Posted May 29, 2008 Author Report Share Posted May 29, 2008 Nu kāds var palīdzēt??? Link to comment Share on other sites More sharing options...
ImMortl Posted May 29, 2008 Report Share Posted May 29, 2008 nu ieej wc3.cfg vai war3.cfg vai kā tur. un tur paskaties, kur kaut kas par xp minēts. ja nē iedo to cfg, pateikšu kas jāmaina. cfg atrodas addons/amxmodx/configs vai addons/amxmodx/configs/war3/ Link to comment Share on other sites More sharing options...
JAKuT Posted May 29, 2008 Author Report Share Posted May 29, 2008 (edited) Rekur ir 2 faili, kuri es domāju ka šite kaut kur. // Warcraft 3 Frozen Throne Configuration File // Saving Options wc3_save_xp 1 // Enables saving of experience (default is 0) wc3_save_xp_db 0 // How should we save XP? (0 = SQLite, 1 = MySQL) wc3_save_by 2 // What should I save this as? steam id = 0, IP = 1, name = 2 (default is 0) wc3_save_pruning 0 // Automatically prunes the database of old users at a mapchange (default is 0) wc3_days_before_delete 30 // However many days before deleting XP or pruning from the database (default is 31) wc3_save_end_round 1 // Save xp at the end of each round (may cause lag, default is 1) // SQL Database Information wc3_sql_dbhost "localhost" // Host Name wc3_sql_dbuser "root" // User Name wc3_sql_dbpass "" // Password wc3_sql_dbname "war3ft" // Database Name // Admin Options wc3_admin_flag "m" // Admin flag required to give/take XP (default is m) // Experience Options wc3_xp_multiplier 1.0 // set the level required to gain a level as a multiple (default 1.0) wc3_xp_weap_multiplier 1 // Award XP based on the weapon used (default is 1) wc3_min_players 2 // Minimum amount of players needed b4 awarding XP (default is 2) wc3_ignore_bots 0 // Ignore bots, spectators, and HLTV when calculating minimum players required to gain XP? (default is 0) wc3_xp_auto_average 0 // With this option set to 1, the joining players will receive the average amount of XP that all of the players have (SHORT TERM XP ONLY, default is 0) wc3_show_objectives 1 // If enabled, will display message in chat to show XP they gain for completing certain objectives (default is 1) wc3_show_kill_obj 0 // Shows how much XP you gain for killing someone (each kill, default is 0) wc3_xp_radius 750 // Radius to give XP to teammates near where the special objective is completed (rescued hosties, bomb planted, killed vip, vip escaped, default is 750) // Game Play Enhancements wc3_races 8 // Number of races (if races are less than 5, the second shopmenu will be disabled (4 is standard war3), default is 8) wc3_grenade_protection 0 // Only 1 HE grenade will be allowed for purchase per round (default is 0) wc3_spec_position 0 // 0 is for left, 1 is for right (where to put the information for those spectating, default is 0) wc3_buy_zone 0 // Restrict purchasing shopmenu items to within the buyzone? (default is 0) wc3_buy_time 0 // Restrict purchasing shopmenu items to within the buytime? (default is 0) wc3_buy_dead 1 // Allow users to purchause items when dead? (default is 1) wc3_show_player 1 // Show teammate and enemy information in the center of the screen when they are on target? (not for DOD, default is 1) wc3_query_client 1 // Check user's cl_minmodel cvar every second (default is 1) wc3_cheats 0 // Enable cheats for wc3? (default is 0) wc3_psychostats 1 // Print psychostats information to log files for wc3 abilities? (default is 0) wc3_start_level 0 // What level should all players start at when joining? (default is 0) // Icon Options (displayed above player's head) wc3_race_icon 1 // Allow users to type /icons to show player icons above the player (default is 1) wc3_level_icon 1 // Allow users to type /icons to see player levels above the player (default is 1) // Chameleon Race Configuration Options - see _chameleon.txt for more information wc3_cham_random 1 // Should the 9th race have random skills each round?, if so the next 4 option are irrelevant (default is 1) wc3_cham_skill1 14 // What skill ID for skill 1? wc3_cham_skill2 0 // What skill ID for skill 2? wc3_cham_skill3 6 // What skill ID for skill 3? wc3_cham_ultimate 7 // What skill ID for the user's ultimate? wc3_cham_passive 20 // What skill ID for the user's passive skill? // Skill and Ultimate configurations wc3_ult_delay 10.0 // Amount of time (in seconds) to delay the ultimates at the start of each round (default is 15.0) wc3_ult_cooldown 20.0 // Cooldown of all ultimates (default is 35.0) wc3_blink_protection 0 // slays people who abuse blink on some maps (skywalking, map exploiting, default is 1) wc3_blink_dizziness 0 // What type of diziness? (0 is flashbang effect, 1 is fading blue screen, default is 0) wc3_entangle_drop 0 // Should the player's primary weapon be dropped when they are entangled? (default is 0) // Item configurations wc3_glove_timer 7 // Interval between receiving a new grenade with the Flaming Gloves of Warmth (default is 10) wc3_glove_orc_damage 1 // When using gloves, should orcs be given the critical dmg? (Default is 0) wc3_boots 0.30 // Percentage increase given by boots (.10 = 10%, default is 0.10) wc3_claw 10 // Damage done by Claws of Attack (default is 6) wc3_health 50 // Health bonus given for periapt of health (default is 15) wc3_frost 80.0 // Speed of victim when attacked with Orb of Frost (default is 125.0) wc3_mask 0.50 // Percentage of life gained back by mask of death (default is 0.3) wc3_cloak 150 // Invisibility given with cloak, lower is more invisible (default is 150) wc3_sock 0.8 // Gravity level for Sock of the Feather (default is 0.5) wc3_tome 3 // XP given for purchasing tome of experience (default is 50) // Bot Configuration Options wc3_bot_buy_item 0.33 // Chance of a bot buying a shopmenu item at the beginning of the round (default is 0.33) // DOD Options wc3_dod_start_money 800 // Starting money for dod un /* * XP Functions */ #define XP_NEARBY_RADIUS 250 // START FROM CSX.INC - This is a hack b/c we can't include CSX and DODX in the same plugin :/ forward bomb_planting(planter); forward bomb_planted(planter); forward bomb_defusing(defuser); forward bomb_defused(defuser); // END FROM CSX.INC // Called when a user begins defusing the bomb public bomb_defusing( defuser ) { if ( !WC3_Check() ) { return; } // Make sure that this isn't called more than once per round if ( !bHasBegunPlantingOrDefusing[defuser] ) { new iBonusXP = XP_Give( defuser, DEFUSING_BOMB ); if ( iBonusXP != 0 ) { client_print( defuser, print_chat, "%s You have been awarded %d XP for starting to defuse the bomb", g_MODclient, iBonusXP ); } } bHasBegunPlantingOrDefusing[defuser] = true; } // Called when a user defuses the bomb public bomb_defused( defuser ) { if ( !WC3_Check() ) { return; } new iBonusXP = XP_Give( defuser, DEFUSED_BOMB ); if ( iBonusXP != 0 ) { client_print( defuser, print_chat, "%s You have been awarded %d XP for defusing the bomb", g_MODclient, iBonusXP ); } g_iPlayerRole[defuser] = 0; } // Called when a user begins planting the bomb public bomb_planting( planter ) { if ( !WC3_Check() ) { return; } // Make sure that this isn't called more than once per round if ( !bHasBegunPlantingOrDefusing[planter] ) { new iBonusXP = XP_Give( planter, PLANTING_BOMB ); if ( iBonusXP != 0 ) { client_print( planter, print_chat, "%s You have been awarded %d XP for starting to plant the bomb", g_MODclient, iBonusXP ); } } g_iPlayerRole[planter] = PLR_BOMB_PLANTER; bHasBegunPlantingOrDefusing[planter] = true; } // Called when a user has planted the bomb public bomb_planted( planter ) { if ( !WC3_Check() ) { return; } new iBonusXP = XP_Give( planter, PLANT_BOMB ); if ( iBonusXP != 0 ) { client_print( planter, print_chat, "%s You have been awarded %d XP for planting the bomb", g_MODclient, iBonusXP ); } g_iPlayerRole[planter] = 0; p_data_b[planter][PB_ISPLANTING] = false; // Serpent Ward Check SH_BombPlanted(); } // Called on certain player events public on_PlayerAction() { if ( !WC3_Check() ) { return; } new sArg[64], sAction[64], sName[64]; new iUserId, id; read_logargv( 0,sArg,64 ); read_logargv( 2,sAction,64 ); parse_loguser( sArg,sName,64,iUserId ); id = find_player( "k", iUserId ); if ( id == 0 ) { return; } // If the round is over do not award XP! if ( g_EndRound ) { return; } // Spawned with the bomb if (equal(sAction,"Spawned_With_The_Bomb")) { g_iPlayerRole[id] = PLR_BOMB_CARRIER; new iBonusXP = XP_Give( id, SPAWN_BOMB ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have been awarded %d XP for spawning with the bomb", g_MODclient, iBonusXP ); } } // Dropped bomb else if (equal(sAction,"Dropped_The_Bomb")) { g_iPlayerRole[id] = 0; new iBonusXP = XP_Give( id, -1 * BOMB_PICKUP ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have lost %d XP for dropping the bomb", g_MODclient, -1 * iBonusXP ); } } // Picked up bomb else if (equal(sAction,"Got_The_Bomb")) { g_iPlayerRole[id] = PLR_BOMB_CARRIER; new iBonusXP = XP_Give( id, BOMB_PICKUP ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have been awarded %d XP for picking up the bomb", g_MODclient, iBonusXP ); } } // Hostage touched else if (equal(sAction,"Touched_A_Hostage")) { g_iPlayerRole[id] = PLR_HOSTAGE_RESCUER; new iBonusXP = XP_Give( id, TOUCH_HOSTAGE ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have been awarded %d XP for starting to rescue a hostage", g_MODclient, iBonusXP ); } } // Hostage rescued else if (equal(sAction,"Rescued_A_Hostage")) { new iBonusXP = XP_Give( id, RESCUE_HOSTAGE ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have been awarded %d XP for rescuing a hostage", g_MODclient, iBonusXP ); } } // Hostage killed else if (equal(sAction,"Killed_A_Hostage")) { new iBonusXP = XP_Give( id, -1 * KILL_HOSTAGE ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have lost %d XP for killing a hostage", g_MODclient, -1 * iBonusXP ); } } // VIP spawn else if (equal(sAction,"Became_VIP")) { g_iPlayerRole[id] = PLR_VIP; new iBonusXP = XP_Give( id, SPAWN_VIP ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have gained %d XP for spawning as the VIP", g_MODclient, iBonusXP ); } } // VIP escaped else if (equal(sAction,"Escaped_As_VIP")) { new iBonusXP = XP_Give( id, ESCAPE_VIP ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s You have gained %d XP for escaping as the VIP", g_MODclient, iBonusXP ); } } } XP_onDeath( iVictim, iAttacker, iWeaponIndex, iHeadshot ) { // We don't want to give XP to the world if ( iAttacker == 0 ) { return; } // We don't want to give XP to suiciders else if ( iAttacker == iVictim ) { return; } new iLevel = p_data[iVictim][P_LEVEL] new iBonusXP, iXP = floatround( XP_GivenByLevel( iLevel ) * fWpnXPMultiplier[iWeaponIndex] ); // Check for a team kill if ( get_user_team( iAttacker ) == get_user_team( iVictim ) ) { // Remove XP since he killed his teammate iBonusXP = XP_Give( iAttacker, -1 * iXP ); // This message should be displayed no matter what XP_kill_objectives is, b/c it's a no-no if ( iBonusXP != 0 ) { client_print( iAttacker, print_chat, "%s You have lost %d XP for killing a teammate", g_MODclient, -1 * iBonusXP ); } } // Otherwise the player killed the other team else { // Award XP for a kill iBonusXP = XP_Give( iAttacker, iXP ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for killing the enemy", g_MODclient, iBonusXP ); } // User had a headshot? Give bonus XP! if ( iHeadshot ) { iBonusXP = XP_Give( iAttacker, KILL_HEADSHOT ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for getting a headshot", g_MODclient, iBonusXP ); } } new iAssistLevel, iAssistXP, iVictimMaxHealth; new Float:fMultiplier; // Award XP for other people doing damage to this victim for ( new i = 0; i < MAXPLAYERS; i++ ) { // Then this player dealt some damage to this player this round if ( g_iDamageDealt[i][iVictim] > 0 && iAttacker != i ) { iVictimMaxHealth = get_user_maxhealth( iVictim ); fMultiplier = float( g_iDamageDealt[i][iVictim] ) / float( iVictimMaxHealth ); iAssistLevel = p_data[i][P_LEVEL]; iAssistXP = XP_GivenByLevel( iAssistLevel ); // Need a ratio of XP to award to person who dealt damage iBonusXP = XP_Give( i, ( floatround( float( iAssistXP ) * fMultiplier ) / 2 ) ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( i, print_chat, "%s You have been awarded %d XP for a kill assist!", g_MODclient, iBonusXP ); } // victim may respawn, so reset the counter g_iDamageDealt[i][iVictim] = 0; } } if ( g_MOD == GAME_CSTRIKE || g_MOD == GAME_CZERO ) { // User killed a hostage rescuer if ( g_iPlayerRole[iVictim] == PLR_HOSTAGE_RESCUER ) { iBonusXP = XP_Give( iAttacker, KILL_HOSTAGE_SAVER ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for killing the hostage rescuer", g_MODclient, iBonusXP ); } } // User killed the bomb defuser else if ( g_iPlayerRole[iVictim] == PLR_BOMB_DEFUSER ) { iBonusXP = XP_Give( iAttacker, KILL_DEFUSER ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for killing the bomb defuser", g_MODclient, iBonusXP ); } } // User killed the bomb planter else if ( g_iPlayerRole[iVictim] == PLR_BOMB_PLANTER ) { iBonusXP = XP_Give( iAttacker, KILL_PLANTER ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for killing the bomb planter", g_MODclient, iBonusXP ); } } // User killed the bomb carrier else if ( g_iPlayerRole[iVictim] == PLR_BOMB_CARRIER ) { iBonusXP = XP_Give( iAttacker, KILL_BOMB_CARRIER ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_kill_obj ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for killing the bomb carrier", g_MODclient, iBonusXP ); } } // user killed the VIP else if ( g_iPlayerRole[iVictim] == PLR_VIP ) { iBonusXP = XP_Give( iAttacker, KILL_VIP ); if ( iBonusXP != 0 && get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( iAttacker, print_chat, "%s You have been awarded %d XP for killing the VIP", g_MODclient, iBonusXP ); } } } else if ( g_MOD == GAME_DOD ) { } // Player died, so lets reset their data g_iPlayerRole[iVictim] = 0; } } XP_WinRound( iWinner ) { new players[32], numberofplayers, i, id; get_players( players, numberofplayers ); for ( i = 0; i < numberofplayers; i++ ) { id = players[i]; // Is the user on the correct team? if ( get_user_team( id ) == iWinner ) { new iBonusXP = XP_Give( id, WIN_ROUND ); if ( get_pcvar_num( CVAR_wc3_show_objectives ) ) { client_print( id, print_chat, "%s %L", g_MODclient, id, "AWARD_FOR_WINNING_ROUND", iBonusXP ); } } } } XP_GetByLevel( iLevel ) { if ( iLevel < 0 || iLevel > 10 ) { return 0; } // Change based on XP multiplier! new Float:fXPMult = get_pcvar_float( CVAR_wc3_xp_multiplier ); if ( get_pcvar_num( CVAR_wc3_save_xp ) ) { return floatround( iXPLevelSaved[iLevel] * fXPMult ); } return floatround( iXPLevelShortTerm[iLevel] * fXPMult ); } XP_GivenByLevel( iLevel ) { if ( iLevel < 0 || iLevel > 10 ) { return 0; } if ( get_pcvar_num( CVAR_wc3_save_xp ) ) { return iXPGivenSaved[iLevel]; } return iXPGivenShortTerm[iLevel]; } bool:XP_MinPlayers() { new iNum = 0; // Don't ignore bots if ( get_pcvar_num( CVAR_wc3_ignore_bots ) == 0 ) { iNum = get_playersnum(); } // Ignore bots, spectators, and HLTV else { new players[32]; if ( g_MOD == GAME_CSTRIKE || g_MOD == GAME_CZERO ) { new iNumCT; get_players( players, iNum, "ce", "TERRORIST" ); get_players( players, iNumCT, "ce", "CT" ); iNum += iNumCT; } else if ( g_MOD == GAME_DOD ) { new iNumAxis; get_players( players, iNum, "ce", "Allies" ); get_players( players, iNumAxis, "ce", "Axis" ); iNum += iNumAxis; } } if ( iNum < get_pcvar_num( CVAR_wc3_min_players ) ) { return false; } return true; } // Function will verify if the user's level/information is correct and checks to see if the user has gained a level XP_Check( id, bShowGained = true ) { new iOldLevel = p_data[id][P_LEVEL], i; // Make sure the user doesn't have negative experience if ( p_data[id][P_XP] < 0 ) { p_data[id][P_XP] = 0; } // Determine what the user's level should be for ( i = 0; i <= MAX_LEVELS; i++ ) { // User has enough XP to advance to the next level if ( p_data[id][P_XP] >= XP_GetByLevel( i ) ) { p_data[id][P_LEVEL] = i; } // On this increment the user doesn't have enough XP to advance to the next level else { break; } } // User gained a level if ( p_data[id][P_LEVEL] > iOldLevel && p_data[id][P_RACE] != 0 && bShowGained ) { WC3_StatusText( id, TXT_TOP_CENTER, "%L", id, "YOU_GAINED_A_LEVEL" ); // Only play the sound if the user is alived!! if ( is_user_alive( id ) ) { emit_sound( id, CHAN_STATIC, g_szSounds[SOUND_LEVELUP], 1.0, ATTN_NORM, 0, PITCH_NORM ); } } // We might need to lower the skills the user has ( can occur if you load XP info from a database and the XP multiplier has changed ) new iSkillsUsed = SM_TotalSkillPointsUsed( id ); new iSkillID, iSkillLevel; new bool:bSkillRemoved = false; while ( iSkillsUsed > p_data[id][P_LEVEL] ) { // We might need to remove the ult first! if ( p_data[id][P_LEVEL] < MIN_ULT_LEVEL ) { new iUltimateID = SM_GetSkillOfType( id, SKILL_TYPE_ULTIMATE ); // Then we need to remove this! if ( SM_GetSkillLevel( id, iUltimateID, 0 ) == 1 ) { // Remove the ult SM_SetSkillLevel( id, iUltimateID, 0, 0 ); bSkillRemoved = true; // Clear ult icon! ULT_ClearIcons( id ); // Get our current skills used iSkillsUsed = SM_TotalSkillPointsUsed( id ); // Restart the loop! continue; } } iSkillID = SM_GetRandomSkill( id ); iSkillLevel = SM_GetSkillLevel( id, iSkillID, 1 ); // We don't want a passive skill or a skill that is level 0 so keep trying while ( SM_GetSkillType( iSkillID ) == SKILL_TYPE_PASSIVE || iSkillLevel == 0 ) { iSkillID = SM_GetRandomSkill( id ); iSkillLevel = SM_GetSkillLevel( id, iSkillID, 2 ); } // OK at this point we have a valid skill, lets remove a level! SM_SetSkillLevel( id, iSkillID, iSkillLevel - 1, 1 ); bSkillRemoved = true; // Get our current skills used iSkillsUsed = SM_TotalSkillPointsUsed( id ); } // Need to reset all skill data for the given race if we've removed a skill if ( bSkillRemoved ) { WC3_InitPlayerSkills( id ); } // OK lets check the total skills the user has, and maybe show them the selectskills menu new iTotalSkillsUsed = SM_TotalSkillPointsUsed( id ); if ( iTotalSkillsUsed < p_data[id][P_LEVEL] ) { MENU_SelectSkill( id ); } WC3_ShowBar( id ); } XP_Configure() { // Configure based on weapon multiplier // Counter-Strike and Condition Zero weapons if ( g_MOD == GAME_CSTRIKE || g_MOD == GAME_CZERO ) { fWpnXPMultiplier[CSW_USP ] = 2.5; fWpnXPMultiplier[CSW_DEAGLE ] = 2.5; fWpnXPMultiplier[CSW_GLOCK18 ] = 2.5; fWpnXPMultiplier[CSW_ELITE ] = 3.5; fWpnXPMultiplier[CSW_P228 ] = 2.5; fWpnXPMultiplier[CSW_FIVESEVEN ] = 2.5; fWpnXPMultiplier[CSW_XM1014 ] = 1.25; fWpnXPMultiplier[CSW_M3 ] = 1.5; fWpnXPMultiplier[CSW_MP5NAVY ] = 1.0; fWpnXPMultiplier[CSW_UMP45 ] = 1.25; fWpnXPMultiplier[CSW_P90 ] = 1.25; fWpnXPMultiplier[CSW_TMP ] = 1.5; fWpnXPMultiplier[CSW_MAC10 ] = 1.5; fWpnXPMultiplier[CSW_GALIL ] = 1.15; fWpnXPMultiplier[CSW_FAMAS ] = 1.15; fWpnXPMultiplier[CSW_AWP ] = 1.0; fWpnXPMultiplier[CSW_M4A1 ] = 1.0; fWpnXPMultiplier[CSW_AK47 ] = 1.0; fWpnXPMultiplier[CSW_AUG ] = 1.0; fWpnXPMultiplier[CSW_SG552 ] = 1.0; fWpnXPMultiplier[CSW_G3SG1 ] = 1.0; fWpnXPMultiplier[CSW_SG550 ] = 1.0; fWpnXPMultiplier[CSW_M249 ] = 1.25; fWpnXPMultiplier[CSW_SCOUT ] = 3.0; fWpnXPMultiplier[CSW_HEGRENADE ] = 1.75; fWpnXPMultiplier[CSW_KNIFE ] = 6.0; fWpnXPMultiplier[CSW_C4 ] = 2.0; fWpnXPMultiplier[CSW_SMOKEGRENADE ] = 1.0; fWpnXPMultiplier[CSW_FLASHBANG ] = 1.0; } // Day of Defeat weapons else if ( g_MOD == GAME_DOD ) { fWpnXPMultiplier[DODW_AMERKNIFE ] = 6.0; fWpnXPMultiplier[DODW_GERKNIFE ] = 6.0; fWpnXPMultiplier[DODW_BRITKNIFE ] = 6.0; fWpnXPMultiplier[DODW_GARAND_BUTT ] = 6.0; fWpnXPMultiplier[DODW_HANDGRENADE ] = 1.75; fWpnXPMultiplier[DODW_STICKGRENADE ] = 1.75; fWpnXPMultiplier[DODW_STICKGRENADE_EX ] = 1.75; fWpnXPMultiplier[DODW_HANDGRENADE_EX ] = 1.75; fWpnXPMultiplier[DODW_COLT ] = 1.0; fWpnXPMultiplier[DODW_LUGER ] = 1.0; fWpnXPMultiplier[DODW_GARAND ] = 1.0; fWpnXPMultiplier[DODW_SCOPED_KAR ] = 1.0; fWpnXPMultiplier[DODW_THOMPSON ] = 1.0; fWpnXPMultiplier[DODW_STG44 ] = 1.0; fWpnXPMultiplier[DODW_SPRINGFIELD ] = 1.0; fWpnXPMultiplier[DODW_KAR ] = 1.0; fWpnXPMultiplier[DODW_BAR ] = 1.0; fWpnXPMultiplier[DODW_MP40 ] = 1.0; fWpnXPMultiplier[DODW_MG42 ] = 1.0; fWpnXPMultiplier[DODW_30_CAL ] = 1.0; fWpnXPMultiplier[DODW_SPADE ] = 1.0; fWpnXPMultiplier[DODW_M1_CARBINE ] = 1.0; fWpnXPMultiplier[DODW_MG34 ] = 1.0; fWpnXPMultiplier[DODW_GREASEGUN ] = 1.0; fWpnXPMultiplier[DODW_FG42 ] = 1.0; fWpnXPMultiplier[DODW_K43 ] = 1.0; fWpnXPMultiplier[DODW_ENFIELD ] = 1.0; fWpnXPMultiplier[DODW_STEN ] = 1.0; fWpnXPMultiplier[DODW_BREN ] = 1.0; fWpnXPMultiplier[DODW_WEBLEY ] = 1.0; fWpnXPMultiplier[DODW_BAZOOKA ] = 1.0; fWpnXPMultiplier[DODW_PANZERSCHRECK ] = 1.0; fWpnXPMultiplier[DODW_PIAT ] = 1.0; fWpnXPMultiplier[DODW_SCOPED_FG42 ] = 1.0; fWpnXPMultiplier[DODW_FOLDING_CARBINE ] = 1.0; fWpnXPMultiplier[DODW_KAR_BAYONET ] = 1.0; fWpnXPMultiplier[DODW_SCOPED_ENFIELD ] = 1.0; fWpnXPMultiplier[DODW_MILLS_BOMB ] = 1.0; fWpnXPMultiplier[DODW_ENFIELD_BAYONET ] = 1.0; fWpnXPMultiplier[DODW_MORTAR ] = 1.0; fWpnXPMultiplier[DODW_K43_BUTT ] = 1.0; } fWpnXPMultiplier[CSW_WORLDSPAWN ] = 0.0; fWpnXPMultiplier[CSW_LIGHTNING ] = 1.0; fWpnXPMultiplier[CSW_SUICIDE ] = 1.0; fWpnXPMultiplier[CSW_IMMOLATE ] = 1.0; fWpnXPMultiplier[CSW_LOCUSTS ] = 1.0; fWpnXPMultiplier[CSW_SERPENTWARD ] = 1.0; fWpnXPMultiplier[CSW_SHADOW ] = 1.0; fWpnXPMultiplier[CSW_THORNS ] = 1.0; fWpnXPMultiplier[CSW_CARAPACE ] = 1.0; fWpnXPMultiplier[CSW_CARRION ] = 1.0; fWpnXPMultiplier[CSW_ORB ] = 1.0; fWpnXPMultiplier[CSW_CONCOCTION ] = 1.0; fWpnXPMultiplier[CSW_BANISH ] = 1.0; } // Reset the user's XP to 0 public XP_Reset(id) { p_data[id][P_LEVEL] = 0; p_data[id][P_XP] = 0; SM_ResetSkillLevels( id ); // Save after resetting the user's XP DB_SaveXP( id, true ); WC3_ShowBar( id ); client_print( id, print_chat, "%s %L", g_MODclient, id, "YOUR_XP_HAS_BEEN_RESET" ); // Reset the skills... SHARED_INVIS_Set( id ); // Undead's Unholy Aura SHARED_SetGravity( id ); // Set the user's speed SHARED_SetSpeed( id ); return PLUGIN_CONTINUE; } // Function from war3x thanks ryan!!! public XP_GetAdminFlag() { new szFlags[24]; get_pcvar_string( CVAR_wc3_admin_flag, szFlags, 23 ); return ( read_flags( szFlags ) ); } stock XP_Give( id, iBonusXP ) { if ( !WC3_Check() || !id ) { return 0; } // Make sure we have the minimum amount of players if ( !XP_MinPlayers() ) { return 0; } // Bonus calculated by: // Bonus XP * (lvl of player/10 + 1.0) // I.E. if Player is level 10, then it will be Bonus XP * 2.0 if ( iBonusXP != 0 ) { new Float:fCurrentLevel = float( p_data[id][P_LEVEL] ); new Float:iLevelMultiplier = ( fCurrentLevel / 10.0 ) + 1.0; new iRealBonusXP = floatround(iLevelMultiplier * iBonusXP); p_data[id][P_XP] += iRealBonusXP; XP_Check( id ); return iRealBonusXP; } return 0; } Edited May 29, 2008 by JAKuT Link to comment Share on other sites More sharing options...
JAKuT Posted May 30, 2008 Author Report Share Posted May 30, 2008 Vēl atradu.. bet nezinu kā būtu pareizi.. /* * XP Header File */ // Objective Modifiers #define DEFUSING_BOMB 10 // XP awarded when the user starts to defuse the bomb #define DEFUSED_BOMB 20 // XP awarded when the user defuses the bomb #define PLANTING_BOMB 10 // XP awarded when the user starts planting the bomb #define PLANT_BOMB 20 // XP awarded when the user plants the bomb #define SPAWN_BOMB 10 // XP awarded when the user spawns with the bomb #define BOMB_PICKUP 10 // XP awarded when the user picks up the bomb #define TOUCH_HOSTAGE 10 // XP awarded when the user touches a hostage #define RESCUE_HOSTAGE 20 // XP awarded when the user rescues the hostage #define KILL_HOSTAGE 10 // XP lost when killing a hostage #define SPAWN_VIP 10 // XP awarded for spawning as the VIP #define ESCAPE_VIP 20 // XP awarded for escaping as the VIP #define OBJ_RADIUS 500 // Nearby radius to award XP for helping complete objectives // Kill modifiers #define KILL_HEADSHOT 10 // XP awarded for getting a headshot #define KILL_HOSTAGE_SAVER 10 // XP awarded for killing the hostage saver #define KILL_DEFUSER 10 // XP awarded for killing the defuser #define KILL_PLANTER 10 // XP awarded for killing the planter #define KILL_BOMB_CARRIER 10 // XP awarded for killing the bomb carrier #define KILL_VIP 20 // XP awarded for killing the VIP #define KILL_RADIUS 250 // Nearby radius to award XP #define WIN_ROUND 20 // XP awarded for winning the round // Holds information about the player enum { PLR_BOMB_DEFUSER = 1, PLR_BOMB_PLANTER, PLR_HOSTAGE_RESCUER, PLR_VIP, PLR_BOMB_CARRIER, }; new g_iPlayerRole[33]; new bool:bHasBegunPlantingOrDefusing[33]; // Holds the XP Multipliers per weapon new Float:fWpnXPMultiplier[CSW_WAR3_MAX+1] = {1.0}; // Amount of XP needed to gain a level new iXPLevelShortTerm[11] = {0,150,300,600,1000,1500,2100,2800,3400,4500,5500}; new iXPLevelSaved[11] = {0,100,200,400,800,1600,3200,6400,12800,25600,51200}; // Amount of XP awarded when killing a user of this level new iXPGivenShortTerm[11] = {10,15,25,35,40,50,60,70,80,90,95}; new iXPGivenSaved[11] Link to comment Share on other sites More sharing options...
DeSaa Posted May 30, 2008 Report Share Posted May 30, 2008 nezzz... es vieniigi varu paliidzet taa redzi pedeja cfg ir KILL_HEADSHOT 10 KILL_HOSTAGE_SAVER 10 un shitievisi uzliec piem ja uzliek c4 iedod 1exp heda noshauj 3 vnk 2 utt. Link to comment Share on other sites More sharing options...
JAKuT Posted June 1, 2008 Author Report Share Posted June 1, 2008 Nu man, kāds palīdzēs? Vai neviens nezin, vai arī ir grūti pateikt Kāpēc mūsu laikā visi tik skopi? Link to comment Share on other sites More sharing options...
Geugis Posted June 6, 2008 Report Share Posted June 6, 2008 1.Labs screen no WAR3.NAKEN.NET 2. man ira tads war3,tas ir SCRIPTOS JATAISA!,atver scripting mapiti> pec tam ieej war3ft mape> un atrdi XP.INL un reku ir : Info by : k!ll3r Link to comment Share on other sites More sharing options...
BlackBeTTy Posted June 6, 2010 Report Share Posted June 6, 2010 Tu vari mainit taja war3ft.cfg faila,samekle sitadu rindu: wc3_xp_multiplier 1.0 // set the level required to gain a level as a multiple nomainit to ciparu piemeram uz 3.0 un bus grutak dabut 10lvl uzliec 7-10 ciparu ka4as vairak neka gadu =D Link to comment Share on other sites More sharing options...
Dj_Stay Posted June 6, 2010 Report Share Posted June 6, 2010 ieej scripts/war3ft/xp.h atrodi new iXPLevelSaved[MAX_LEVELS+1] = {0,260,520,1040,2080,4160,8320,16640,33280,66560,133120}; Un kur ir skaitli redige Tie par katru limeni xp Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now