火飞寒 发表于 2009-3-30 12:24:41

【求助】我的miscstats.txt有问题!

本帖最后由 火飞寒 于 2009-4-3 09:57 编辑

服务器重启时,看到有提示miscstats.txt加载错误!提示大致是:invalid line, cstrike\addons\amxmodx\data\lang\miscstats.txt   line 1
那位前辈帮忙看看?到底是什么问题?

WITH = with
KNIFE_MSG_1 = %s sliced and diced %s
KNIFE_MSG_2 = %s pulled out knife and gutted %s
KNIFE_MSG_3 = %s sneaks carefully behind and knifed %s
KNIFE_MSG_4 = %s knived %s
LAST_MSG_1 = Now all depend on you!
LAST_MSG_2 = I hope you still have a healthpack.
LAST_MSG_3 = All your teammates were killed. Good luck!
LAST_MSG_4 = Now you are alone. Have fun!
HE_MSG_1 = %s sends a little gift to %s
HE_MSG_2 = %s throws a small present to %s
HE_MSG_3 = %s made a precision throw to %s
HE_MSG_4 = %s got a big explosion for %s
SHE_MSG_1 = %s detonated himself with a grenade
SHE_MSG_2 = %s trys the effect of an HE Grenade
SHE_MSG_3 = %s swallows grenades whole!
SHE_MSG_4 = %s explodes!
HS_MSG_1 = $kn killed $vn with a well^nplaced shot to the head!
HS_MSG_2 = $kn removed $vn's^nhead with the $wn
HS_MSG_3 = $kn turned $vn's head^ninto pudding with the $wn
HS_MSG_4 = $vn got pwned by $kn
HS_MSG_5 = $vn's head has been^nturned into red jello
HS_MSG_6 = $kn has superb aim with the $wn,^nas $vn well knows.
HS_MSG_7 = $vn's head stayed in $kn's^ncrosshairs a bit too long...
DOUBLE_KILL = Wow! %s made a double kill!!!
PREPARE_FIGHT = Prepare to FIGHT!^nRound %d
KILLED_ROW = You've killed %d in a row so far
DIED_ROUNDS = Careful! You've died %d rounds in a row now...
KILLED_CHICKEN = Somebody killed a chicken!!!
BLEW_RADIO = Somebody blew up the radio!!!
REACHED_TARGET = Omg! %s reached the target!
PLANT_BOMB = %s is planting the bomb!
DEFUSING_BOMB = %s is defusing the bomb...
SET_UP_BOMB = %s set us up the bomb!!!
DEFUSED_BOMB = %s defused the bomb!
FAILED_DEFU = %s failed to defuse the bomb...
PICKED_BOMB = %s picked up the bomb...
DROPPED_BOMB = %s dropped the bomb!!!
REMAINING = %d %s Remaining...
KILLS = kills
HS = HS
MULTI_MSG = Multi-Kill! %s
ULTRA_MSG = Ultra-Kill!!! %s
SPREE_MSG = %s IS ON A KILLING SPREE!!!
RAMPAGE_MSG = RAMPAGE!!! %s
UNSTOPPABLE_MSG = %s IS UNSTOPPABLE!!!
MONSTER_MSG = %s IS A MONSTER!
GODLIKE_MSG = %s IS GODLIKE!!!!
MULTI_SMALL = %s: Multi-Kill!
ULTRA_SMALL = %s: Ultra-Kill!!!
SPREE_SMALL = %s IS ON A KILLING SPREE!!!
RAMPAGE_SMALL = %s: RAMPAGE!!!
UNSTOPPABLE_SMALL = %s IS UNSTOPPABLE!!!
MONSTER_SMALL = %s IS A MONSTER!
GODLIKE_SMALL = %s IS GODLIKE!!!
VS = vs.
HP = HP
AP = AP


WITH = 共计
KNIFE_MSG_1 = %s 把 %s 割成了肉片
KNIFE_MSG_2 = %s 拔出身上的刀干掉了 %s
KNIFE_MSG_3 = %s 小心地在 %s 的身后抽刀干掉了他
KNIFE_MSG_4 = %s 用刀戳死了 %s
LAST_MSG_1 = 现在全部希望都在你身上
LAST_MSG_2 = 我真希望你有个急救包
LAST_MSG_3 = 你的队员都被干掉了 祝你好运
LAST_MSG_4 = 现在就剩你一个人了 玩得开心
HE_MSG_1 = %s 送了一个小小的礼物给 %s
HE_MSG_2 = %s 丢了一个小礼物给 %s
HE_MSG_3 = %s 准确地将手榴弹投掷给 %s
HE_MSG_4 = %s 把 %s 炸飞了
SHE_MSG_1 = %s 被自己的手榴弹炸死
SHE_MSG_2 = %s 亲身试验手榴弹的威力
SHE_MSG_3 = %s 吞了整个手榴弹
SHE_MSG_4 = %s 自爆了
HS_MSG_1 = $kn 一枪打爆了 $vn 的头
HS_MSG_2 = $kn 用 $wn 轰掉了 $vn 的头
HS_MSG_3 = $kn 用 $wn 将 $vn 的头打的血肉模糊
HS_MSG_4 = $vn 被 $kn 打的灰飞烟灭
HS_MSG_5 = $vn 的头被打成了肉酱
HS_MSG_6 = $kn 握着他最精准 $wn^n只有 $vn 才能知道他有多神勇
HS_MSG_7 = $vn 的头停留在 $kn 的准心下太长时间了...
DOUBLE_KILL = 哇哇... %s 打出了漂亮的双杀
PREPARE_FIGHT = 投入战斗中...^n第 %d 回合
KILLED_ROW = 到目前为止你已经连续杀掉了 %d 个人
DIED_ROUNDS = 小心...你现在已经连续 %d 局被杀死了
KILLED_CHICKEN = 有人杀掉了小鸡
BLEW_RADIO = 有人炸掉了收音机
REACHED_TARGET = 呀呀... %s 到达了目标
PLANT_BOMB = %s 正在...安装炸弹
DEFUSING_BOMB = %s 正在...拆除炸弹
SET_UP_BOMB =%s 成功装好了炸弹
DEFUSED_BOMB = %s 成功拆除了炸弹
FAILED_DEFU =%s 拆除炸弹失败
PICKED_BOMB = %s 捡起了炸药包
DROPPED_BOMB =%s 丢掉了炸药包
REMAINING = 还剩 %d 个 %s ...
KILLS = 杀敌
HS = 爆头
MULTI_MSG = 干的好 %s
ULTRA_MSG = 真能杀 %s
SPREE_MSG = %s 简直是狂战士
RAMPAGE_MSG = 杀人王 %s
UNSTOPPABLE_MSG = %s 势不可挡
MONSTER_MSG = %s 简直是魔王
GODLIKE_MSG = %s 如同上帝
MULTI_SMALL = %s 干的好
ULTRA_SMALL = %s 真能杀
SPREE_SMALL = %s 简直是狂战士
RAMPAGE_SMALL = %s 杀人王
UNSTOPPABLE_SMALL = %s 势不可挡
MONSTER_SMALL = %s 简直是魔王
GODLIKE_SMALL = %s 如同上帝
VS = 对
HP = 生命
AP = 护甲
C4 = C4爆炸在 %d 秒后
second = -%d 秒

火飞寒 发表于 2009-3-30 12:28:58

本帖最后由 火飞寒 于 2009-4-3 09:53 编辑

用的是可以显示C4倒数的miscstats.sma,高手帮我看看,怎么会miscstats.txt错误呢?
/* AMX Mod X
*   Misc. Stats Plugin
*
* by the AMX Mod X Development Team
*originally developed by OLO
*
* This file is part of AMX Mod X.
*
*
*This program is free software; you can redistribute it and/or modify it
*under the terms of the GNU General Public License as published by the
*Free Software Foundation; either version 2 of the License, or (at
*your option) any later version.
*
*This program is distributed in the hope that it will be useful, but
*WITHOUT ANY WARRANTY; without even the implied warranty of
*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
*General Public License for more details.
*
*You should have received a copy of the GNU General Public License
*along with this program; if not, write to the Free Software Foundation,
*Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
*In addition, as a special exception, the author gives permission to
*link the code of this program with the Half-Life Game Engine ("HL
*Engine") and Modified Game Libraries ("MODs") developed by Valve,
*L.L.C ("Valve"). You must obey the GNU General Public License in all
*respects for all of the code used other than the HL Engine and MODs
*from Valve. If you modify this file, you may extend this exception
*to your version of the file, but you are not obligated to do so. If
*you do not wish to do so, delete this exception statement from your
*version.
*/

#include <amxmodx>
#include <csx>
#include <cstrike>

public MultiKill
public MultiKillSound
public BombPlanting
public BombDefusing
public BombPlanted
public BombDefused
public BombFailed
public BombPickUp
public BombDrop
public BombCountVoice
public BombCountDef
public BombReached
public ItalyBonusKill
public EnemyRemaining
public LastMan
public KnifeKill
public KnifeKillSound
public GrenadeKill
public GrenadeSuicide
public HeadShotKill
public HeadShotKillSound
public RoundCounterSound
public RoundCounter
public KillingStreak
public KillingStreakSound
public DoubleKill
public DoubleKillSound
public PlayerName
public FirstBloodSound

new g_streakKills
new g_multiKills
new g_C4Timer
new g_Defusing
new g_Planter
new Float:g_LastOmg
new g_LastAnnounce
new g_roundCount
new Float:g_doubleKill
new g_doubleKillId
new g_friend
new g_firstBlood
new g_center1_sync
new g_announce_sync
new g_status_sync
new g_left_sync
new g_bottom_sync
new g_he_sync
new g_roundended
new g_MultiKillMsg[] =
{        "MULTI_MSG",
        "ULTRA_MSG",
        "SPREE_MSG",
        "RAMPAGE_MSG" ,
        "UNSTOPPABLE_MSG",
        "MONSTER_MSG",
        "GODLIKE_MSG"
}

new g_Sounds[] =
{
        "multikill",
        "ultrakill",
        "killingspree",
        "rampage",
        "unstoppable",
        "monsterkill",
        "godlike"
}
new g_KillingMsg[] =
{        "MULTI_SMALL",
        "ULTRA_SMALL",
        "SPREE_SMALL",
        "RAMPAGE_SMALL",
        "UNSTOPPABLE_SMALL",
        "MONSTER_SMALL",
        "GODLIKE_SMALL"
}

new g_KinfeMsg[] =
{
        "KNIFE_MSG_1",
        "KNIFE_MSG_2",
        "KNIFE_MSG_3",
        "KNIFE_MSG_4"
}

new g_LastMessages[] =
{
        "LAST_MSG_1",
        "LAST_MSG_2",
        "LAST_MSG_3",
        "LAST_MSG_4"
}

new g_HeMessages[] =
{
        "HE_MSG_1",
        "HE_MSG_2",
        "HE_MSG_3",
        "HE_MSG_4"
}

new g_SHeMessages[] =
{
        "SHE_MSG_1",
        "SHE_MSG_2",
        "SHE_MSG_3",
        "SHE_MSG_4"
}

new g_HeadShots[] =
{
        "HS_MSG_1",
        "HS_MSG_2",
        "HS_MSG_3",
        "HS_MSG_4",
        "HS_MSG_5",
        "HS_MSG_6",
        "HS_MSG_7"
}

new g_teamsNames[] =
{
        "TERRORIST",
        "CT",
        "TERRORISTS",
        "CTS"
}

public plugin_init()
{
        register_plugin("CS Misc. Stats", AMXX_VERSION_STR, "AMXX Dev Team")
        register_dictionary("common.txt")
        register_dictionary("miscstats.txt")
        register_event("TextMsg", "eRestart", "a", "2&#Game_C", "2&#Game_w")
        register_event("SendAudio", "eEndRound", "a", "2&%!MRAD_terwin", "2&%!MRAD_ctwin", "2&%!MRAD_rounddraw")
        register_event("RoundTime", "eNewRound", "bc")
        register_event("StatusValue", "setTeam", "be", "1=1")
        register_event("StatusValue", "showStatus", "be", "1=2", "2!0")
        register_event("StatusValue", "hideStatus", "be", "1=1", "2=0")

        new mapname
        get_mapname(mapname, 31)

        if (equali(mapname, "de_", 3) || equali(mapname, "csde_", 5))
        {
                register_event("StatusIcon", "eGotBomb", "be", "1=1", "1=2", "2=c4")
                register_event("TextMsg", "eBombPickUp", "bc", "2&#Got_bomb")
                register_event("TextMsg", "eBombDrop", "bc", "2&#Game_bomb_d")
        }
        else if (equali(mapname, "cs_italy"))
        {
                register_event("23", "chickenKill", "a", "1=108", /*"12=106", */ "15=4")
                register_event("23", "radioKill", "a", "1=108", /*"12=294", */ "15=2")
        }
       
        g_center1_sync = CreateHudSyncObj()
        g_announce_sync = CreateHudSyncObj()
        g_status_sync = CreateHudSyncObj()
        g_left_sync = CreateHudSyncObj()
        g_bottom_sync = CreateHudSyncObj()
        g_he_sync = CreateHudSyncObj()
}

public plugin_cfg()
{
        new g_addStast[] = "amx_statscfg add ^"%s^" %s"
       
        server_cmd(g_addStast, "杀人等级", "MultiKill")
        server_cmd(g_addStast, "杀人等级音效", "MultiKillSound")
        server_cmd(g_addStast, "C4埋放过程", "BombPlanting")
        server_cmd(g_addStast, "C4拆解过程", "BombDefusing")
        server_cmd(g_addStast, "C4被放置", "BombPlanted")
        server_cmd(g_addStast, "C4被成功拆解", "BombDefused")
        server_cmd(g_addStast, "C4拆解失败", "BombFailed")
        server_cmd(g_addStast, "拿到C4", "BombPickUp")
        server_cmd(g_addStast, "C4掉落", "BombDrop")
        server_cmd(g_addStast, "C4倒计时", "BombCountVoice")
        server_cmd(g_addStast, "C4拆解时倒计时", "BombCountDef")
        server_cmd(g_addStast, "到达埋雷点", "BombReached")
        server_cmd(g_addStast, "Italy其他事件", "ItalyBonusKill")
        server_cmd(g_addStast, "最后一人", "LastMan")
        server_cmd(g_addStast, "用刀杀死", "KnifeKill")
        server_cmd(g_addStast, "用刀杀死声效", "KnifeKillSound")
        server_cmd(g_addStast, "手雷杀死", "GrenadeKill")
        server_cmd(g_addStast, "用手雷自杀", "GrenadeSuicide")
        server_cmd(g_addStast, "爆头杀死", "HeadShotKill")
        server_cmd(g_addStast, "爆头杀死声效", "HeadShotKillSound")
        server_cmd(g_addStast, "局数显示", "RoundCounter")
        server_cmd(g_addStast, "局数声效", "RoundCounterSound")
        server_cmd(g_addStast, "杀人技能", "KillingStreak")
        server_cmd(g_addStast, "杀人技能声效", "KillingStreakSound")
        server_cmd(g_addStast, "敌人剩余", "EnemyRemaining")
        server_cmd(g_addStast, "双杀", "DoubleKill")
        server_cmd(g_addStast, "双杀声效", "DoubleKillSound")
        server_cmd(g_addStast, "玩家名字", "PlayerName")
        server_cmd(g_addStast, "第一个杀人", "FirstBloodSound")
}

public client_putinserver(id)
{
        g_multiKills = {0, 0}
        g_streakKills = {0, 0}
}

public client_death(killer, victim, wpnindex, hitplace, TK)
{
        if (wpnindex == CSW_C4)
                return

        new headshot = (hitplace == HIT_HEAD) ? 1 : 0
        new selfkill = (killer == victim) ? 1 : 0

        if (g_firstBlood)
        {
                g_firstBlood = 0
                if (FirstBloodSound)
                        play_sound("misc/firstblood")
        }

        if ((KillingStreak || KillingStreakSound) && !TK)
        {
                g_streakKills++
                g_streakKills = 0

                if (!selfkill)
                {
                        g_streakKills++
                        g_streakKills = 0
                       
                        new a = g_streakKills - 3

                        if ((a > -1) && !(a % 2))
                        {
                                new name
                                get_user_name(killer, name, 31)
                               
                                if ((a >>= 1) > 6)
                                        a = 6
                               
                                if (KillingStreak)
                                {
                                        set_hudmessage(0, 100, 255, 0.05, 0.50, 2, 0.02, 6.0, 0.01, 0.1, -1)
                                        //ShowSyncHudMsg(0, g_left_sync, g_KillingMsg, name)
                                        ShowSyncHudMsg(0, g_left_sync, "%L", LANG_PLAYER, g_KillingMsg, name)
                                }
                               
                                if (KillingStreakSound)
                                {
                                        new file
                                       
                                        format(file, 31, "misc/%s", g_Sounds)
                                        play_sound(file)
                                }
                        }
                }
        }

        if (MultiKill || MultiKillSound)
        {
                if (!selfkill && !TK)
                {
                        g_multiKills++
                        g_multiKills += headshot
                       
                        new param
                       
                        param = killer
                        param = g_multiKills
                        set_task(4.0 + float(param), "checkKills", 0, param, 2)
                }
        }

        if (EnemyRemaining && is_user_connected(victim))
        {
                new ppl, pplnum = 0, maxplayers = get_maxplayers()
                new epplnum = 0
                new CsTeams:team = cs_get_user_team(victim)
                new CsTeams:other_team
                new CsTeams:enemy_team = (team == CS_TEAM_T) ? CS_TEAM_CT : CS_TEAM_T
               
                if (team == CS_TEAM_T || team == CS_TEAM_CT)
                {
                        for (new i=1; i<=maxplayers; i++)
                        {
                                if (!is_user_connected(i))
                                {
                                        continue
                                }
                                if (i == victim)
                                {
                                        continue
                                }
                                other_team = cs_get_user_team(i)
                                if (other_team == team && is_user_alive(i))
                                {
                                        epplnum++
                                } else if (other_team == enemy_team) {
                                        ppl = i
                                }
                        }
                       
                        if (pplnum && epplnum)
                        {
                                new message, team_name

                                set_hudmessage(255, 255, 255, 0.02, 0.85, 2, 0.05, 0.1, 0.02, 3.0, -1)
                               
                                /* This is a pretty stupid thing to translate, but whatever */
                                new _teamname
                                if (team == CS_TEAM_T)
                                {
                                        format(_teamname, 31, "TERRORIST%s", (epplnum == 1) ? "" : "S")
                                } else if (team == CS_TEAM_CT) {
                                        format(_teamname, 31, "CT%s", (epplnum == 1) ? "" : "S")
                                }

我是新手 发表于 2009-3-31 12:00:06

你这个还卖钱??

Rulzy 发表于 2009-3-31 18:07:24

用 UltraEdit 将文件保存为 UTF-8无BOM 格式即可。估计你是用Windows的记事本来保存的。

火飞寒 发表于 2009-4-1 10:20:49

本帖最后由 火飞寒 于 2009-4-3 09:54 编辑

for (new a = 0; a < pplnum; ++a)
                                {
                                        format(team_name, 31, "%L", ppl, _teamname)
                                        format(message, 127, "%L", ppl, "REMAINING", epplnum, team_name)
                                        ShowSyncHudMsg(ppl, g_bottom_sync, "%s", message)
                                }
                        }
                }
        }

        if (LastMan)
        {
                new cts, ts, ctsnum, tsnum
                new maxplayers = get_maxplayers()
                new CsTeams:team
               
                for (new i=1; i<=maxplayers; i++)
                {
                        if (!is_user_connected(i) || !is_user_alive(i))
                        {
                                continue
                        }
                        team = cs_get_user_team(i)
                        if (team == CS_TEAM_T)
                        {
                                ts = i
                        } else if (team == CS_TEAM_CT) {
                                cts = i
                        }
                }
               
                if (ctsnum == 1 && tsnum == 1)
                {
                        new ctname, tname
                       
                        get_user_name(cts, ctname, 31)
                        get_user_name(ts, tname, 31)
                       
                        set_hudmessage(0, 255, 255, -1.0, 0.35, 0, 6.0, 6.0, 0.5, 0.15, -1)
                        ShowSyncHudMsg(0, g_center1_sync, "%s %L %s", ctname, LANG_PLAYER, "VS", tname)
                       
                        play_sound("misc/maytheforce")
                }
                else if (!g_LastAnnounce)
                {
                        new oposite = 0, _team = 0
                       
                        if (ctsnum == 1 && tsnum > 1)
                        {
                                g_LastAnnounce = cts
                                oposite = tsnum
                                _team = 2// old: 0
                        }
                        else if (tsnum == 1 && ctsnum > 1)
                        {
                                g_LastAnnounce = ts
                                oposite = ctsnum
                                _team = 3//old: 1
                        }

                        if (g_LastAnnounce)
                        {
                                new name
                               
                                get_user_name(g_LastAnnounce, name, 31)
                               
                                set_hudmessage(0, 255, 255, -1.0, 0.35, 0, 6.0, 6.0, 0.5, 0.15, -1)
                                //ShowSyncHudMsg(0, g_center1_sync, "%s (%d HP) %L %d %s%s: %L", name, get_user_health(g_LastAnnounce), LANG_PLAYER, "VS", oposite, g_teamsNames, (oposite == 1) ? "" : "S", LANG_PLAYER, g_LastMessages)
                                ShowSyncHudMsg(0, g_center1_sync, "%s (%d %L) %L %d %L: %L", name, get_user_health(g_LastAnnounce),LANG_PLAYER, "HP", LANG_PLAYER, "VS", oposite, LANG_PLAYER, g_teamsNames, LANG_PLAYER, g_LastMessages)
                                if (!is_user_connecting(g_LastAnnounce))
                                {
                                        client_cmd(g_LastAnnounce, "spk misc/oneandonly")
                                }
                        }
                }
        }

        if (wpnindex == CSW_KNIFE && (KnifeKill || KnifeKillSound))
        {
                if (KnifeKill)
                {
                        new killer_name, victim_name
                       
                        get_user_name(killer, killer_name, 31)
                        get_user_name(victim, victim_name, 31)
                       
                        set_hudmessage(255, 100, 100, -1.0, 0.25, 1, 6.0, 6.0, 0.5, 0.15, -1)
                        ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_KinfeMsg, killer_name, victim_name)
                }
               
                if (KnifeKillSound)
                        play_sound("misc/humiliation")
        }

        if (wpnindex == CSW_HEGRENADE && (GrenadeKill || GrenadeSuicide))
        {
                new killer_name, victim_name
               
                get_user_name(killer, killer_name, 31)
                get_user_name(victim, victim_name, 31)
               
                set_hudmessage(255, 100, 100, -1.0, 0.25, 1, 6.0, 6.0, 0.5, 0.15, -1)
               
                if (!selfkill)
                {
                        if (GrenadeKill)
                                ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_HeMessages, killer_name, victim_name)
                }
                else if (GrenadeSuicide)
                        ShowSyncHudMsg(0, g_he_sync, "%L", LANG_PLAYER, g_SHeMessages, victim_name)
        }

        if (headshot && (HeadShotKill || HeadShotKillSound))
        {
                if (HeadShotKill && wpnindex)
                {
                        new killer_name, victim_name, weapon_name, message, players, pnum
                       
                        xmod_get_wpnname(wpnindex, weapon_name, 31)
                        get_user_name(killer, killer_name, 31)
                        get_user_name(victim, victim_name, 31)
                        get_players(players, pnum, "c")
                       
                        for (new i = 0; i < pnum; i++)
                        {
                                format(message, 127, "%L", players, g_HeadShots)
                               
                                replace(message, 127, "$vn", victim_name)
                                replace(message, 127, "$wn", weapon_name)
                                replace(message, 127, "$kn", killer_name)
                               
                                set_hudmessage(100, 100, 255, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, -1)
                                ShowSyncHudMsg(players, g_announce_sync, "%s", message)
                        }
                }
               
                if (HeadShotKillSound)
                {
                        client_cmd(killer, "spk misc/headshot")
                        client_cmd(victim, "spk misc/headshot")
                }
        }

        if ((DoubleKill || DoubleKillSound) && !selfkill)
        {
                new Float:nowtime = get_gametime()
               
                if (g_doubleKill == nowtime && g_doubleKillId == killer)
                {
                        if (DoubleKill)
                        {
                                new name
                               
                                get_user_name(killer, name, 31)
                               
                                set_hudmessage(255, 0, 255, -1.0, 0.35, 0, 6.0, 6.0, 0.5, 0.15, -1)
                                ShowSyncHudMsg(0, g_center1_sync, "%L", LANG_PLAYER, "DOUBLE_KILL", name)
                        }
                       
                        if (DoubleKillSound)
                                play_sound("misc/doublekill")
                }
               
                g_doubleKill = nowtime
                g_doubleKillId = killer
        }
}

public hideStatus(id)
{
        if (PlayerName)
        {
                ClearSyncHud(id, g_status_sync)
        }
}

public setTeam(id)
        g_friend = read_data(2)

public showStatus(id)
{
        if (PlayerName)
        {
                new name, pid = read_data(2)
               
                get_user_name(pid, name, 31)
                new color1 = 0, color2 = 0
               
                if (get_user_team(pid) == 1)
                        color1 = 255
                else
                        color2 = 255
                       
                if (g_friend == 1)        // friend
                {
                        new clip, ammo, wpnid = get_user_weapon(pid, clip, ammo)
                        new wpnname
                       
                        if (wpnid)
                                xmod_get_wpnname(wpnid, wpnname, 31)
                       
                        set_hudmessage(color1, 50, color2, -1.0, 0.60, 1, 0.01, 3.0, 0.01, 0.01)
                        ShowSyncHudMsg(id, g_status_sync, "%s -- %d %L / %d %L / %s", name, get_user_health(pid), id, "HP", get_user_armor(pid), id, "AP", wpnname)
                } else {
                        set_hudmessage(color1, 50, color2, -1.0, 0.60, 1, 0.01, 3.0, 0.01, 0.01)
                        ShowSyncHudMsg(id, g_status_sync, "%s", name)
                }
        }
}

public eNewRound()
{
        if (read_data(1) == floatround(get_cvar_float("mp_roundtime") * 60.0))
        {
                g_roundended = 0//This line is added by Rluzy
                g_firstBlood = 1
                g_C4Timer = 0
                ++g_roundCount
               
                if (RoundCounter)
                {
                        set_hudmessage(200, 0, 0, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, -1)
                        ShowSyncHudMsg(0, g_announce_sync, "%L", LANG_PLAYER, "PREPARE_FIGHT", g_roundCount)
                }
               
                if (RoundCounterSound)
                        play_sound("misc/prepare")
               
                if (KillingStreak)
                {
                        new appl, ppl, i
                        get_players(appl, ppl, "ac")
                       
                        for (new a = 0; a < ppl; ++a)
                        {
                                i = appl
                               
                                if (g_streakKills >= 2)
                                        client_print(i, print_chat, "* %L", i, "KILLED_ROW", g_streakKills)
                                else if (g_streakKills >= 2)
                                        client_print(i, print_chat, "* %L", i, "DIED_ROUNDS", g_streakKills)
                        }
                }
        }
}

/* added by Rulzy */
public reset_roundcounter()
{
        g_roundCount = 0
}
/* modified by Rulzy ended */

public eRestart()
{
        eEndRound()
        g_roundCount = 0
        g_firstBlood = 1
        /* added by Rulzy */
        new time=read_data(3)
        new freezetime=get_cvar_num("mp_freezetime")
        remove_task(39023)
        set_task(time+freezetime-0.5,"reset_roundcounter",39023)
        /* modified by Rulzy ended */
}

public eEndRound()
{
        g_C4Timer = -2
        g_roundended = 1//This line is added by Rluzy
        g_LastOmg = 0.0
        remove_task(8038)
        g_LastAnnounce = 0
}

jiajiazf 发表于 2009-4-3 06:08:09

还卖钱。。下次想帮你都难了。。好在R版好人。。顶一个

火飞寒 发表于 2009-4-3 09:55:07

public checkKills(param[])
{
        new id = param
        new a = param
       
        if (a == g_multiKills)
        {
                a -= 3
               
                if (a > -1)
                {
                        if (a > 6)
                        {
                                a = 6
                        }
                       
                        if (MultiKill)
                        {
                                new name
                               
                                get_user_name(id, name, 31)
                                set_hudmessage(255, 0, 100, 0.05, 0.50, 2, 0.02, 6.0, 0.01, 0.1, -1)
                               
                                //ShowSyncHudMsg(0, g_left_sync, g_MultiKillMsg, name, LANG_PLAYER, "WITH", g_multiKills, LANG_PLAYER, "KILLS", g_multiKills, LANG_PLAYER, "HS")
                                ShowSyncHudMsg(0, g_left_sync, "%L^n%L %d %L (%d %L)", LANG_PLAYER, g_MultiKillMsg, name, LANG_PLAYER, "WITH", g_multiKills, LANG_PLAYER, "KILLS", g_multiKills, LANG_PLAYER, "HS")
                        }
                       
                        if (MultiKillSound)
                        {
                                new sound
                                format(sound, 23, "misc/%s", g_Sounds)
                                play_sound(sound)
                        }
                }
                g_multiKills = {0, 0}
        }
}

public chickenKill()
        if (ItalyBonusKill)
                announceEvent(0, "KILLED_CHICKEN")

public radioKill()
{
        if (ItalyBonusKill)
                announceEvent(0, "BLEW_RADIO")
}

announceEvent(id, message[])
{
        new name
       
        get_user_name(id, name, 31)
        set_hudmessage(255, 100, 50, -1.0, 0.30, 0, 6.0, 6.0, 0.5, 0.15, -1)
        ShowSyncHudMsg(0, g_announce_sync, "%L", LANG_PLAYER, message, name)
}

public eBombPickUp(id)
        if (BombPickUp)
                announceEvent(id, "PICKED_BOMB")

public eBombDrop()
        if (BombDrop)
                announceEvent(g_Planter, "DROPPED_BOMB")

public eGotBomb(id)
{
        g_Planter = id
       
        if (BombReached && read_data(1) == 2 && g_LastOmg < get_gametime())
        {
                g_LastOmg = get_gametime() + 15.0
                announceEvent(g_Planter, "REACHED_TARGET")
        }
}

public bombTimer()
{
        if (--g_C4Timer > 0)
        {
                if (BombCountVoice)
                {
                        if (g_C4Timer == 30 || g_C4Timer == 20)
                        {
                                new temp
                               
                                num_to_word(g_C4Timer, temp, 63)
                                format(temp, 63, "^"vox/%s seconds until explosion^"", temp)
                                play_sound(temp)
                        }
                        else if (g_C4Timer < 11)
                        {
                                new temp
                               
                                num_to_word(g_C4Timer, temp, 63)
                                format(temp, 63, "^"vox/%s^"", temp)
                                play_sound(temp)
                        }
                }

                if (BombCountDef){

                                if(g_Defusing){                // 正解时... C4 倒数   //对解炸弹人倒数,0表示所有人(g_Defusing),1表示解炸弹人
                                        if (g_C4Timer < 11)        //后10秒
                                                client_print(0, print_center, "%L", LANG_PLAYER, "second", g_C4Timer)
                                        else
                                                client_print(0, print_center, "%L", LANG_PLAYER, "C4", g_C4Timer)
                                }
                                else{                                                        // 没有解时... C4 倒数
                                        if (g_C4Timer < 11)        //后10秒
                                                client_print(0, print_center, "%L", LANG_PLAYER, "second", g_C4Timer)        //second = -%d秒
                                        else
                                                client_print(0, print_center, "%L", LANG_PLAYER, "C4", g_C4Timer)                        //C4 = C4爆炸: -%d 秒
                                }
                }
        }
        else
                remove_task(8038)
}

public bomb_planted(planter)
{
        g_Defusing = 0
       
        if (BombPlanted)
                announceEvent(planter, "SET_UP_BOMB")
               
        if(g_roundended) return    //This line is added by Rluzy
       
        g_C4Timer = get_cvar_num("mp_c4timer")
        set_task(1.0, "bombTimer", 8038, "", 0, "b")
}

public bomb_planting(planter)
        if (BombPlanting)
                announceEvent(planter, "PLANT_BOMB")

public bomb_defusing(defuser)
{
        if (BombDefusing)
                announceEvent(defuser, "DEFUSING_BOMB")
       
        g_Defusing = defuser
}

public bomb_defused(defuser)
        if (BombDefused)
                announceEvent(defuser, "DEFUSED_BOMB")

public bomb_explode(planter, defuser)
        if (BombFailed && defuser)
                announceEvent(defuser, "FAILED_DEFU")

public play_sound(sound[])
{
        new players, pnum
        get_players(players, pnum, "c")
        new i
       
        for (i = 0; i < pnum; i++)
        {
                if (is_user_connecting(players))
                        continue
               
                client_cmd(players, "spk %s", sound)
        }
}

火飞寒 发表于 2009-4-3 09:56:56

版主、高手们到底哪里有问题?已经保存成UTF-8模式了
页: [1]
查看完整版本: 【求助】我的miscstats.txt有问题!