設為首頁收藏本站

HKCDC討論區

 找回密碼
 註冊

QQ登錄

只需一步,快速開始

搜索

查看: 814|回復: 0

SMA繁化教學 [複製鏈接]

積分
2665
tom720520 發表於 2011-9-15 19:20:36 |顯示全部樓層
前言
古人有云:前人種樹,後人乘涼。

今天秉持著這種精神,來發個很簡單的啟蒙教學文,傳承插件中文化的古老漢方技術。

真的閒閒沒事幹又對AMXX插件有興趣的人,可以繼續看下去...


AMXX插件中文化簡易啟蒙教學

準備工具:
文字編輯軟體
可開啟並編寫修改原始碼的軟體,例如下列:
記事本、Emeditor、Notepad++ 等軟體。
看個人喜好,有些的有附加插件,也許不錯,可節省時間某些任務。
推薦此軟體:Notepad++ 非常地強大,非常地好用!


可輕鬆編碼成UTF-8(檔首無BOM)
要設成跟我一樣的環境,請點選自訂->設定程式語言格式->主題選取:Obsidian
並且在程式語言那選C語言,即可自動變色處理!

無須任何C語言能力即可學習中文化技術!
你只須找尋(搜尋)原始碼中,被雙引號包圍的片段,例如:"Prepare to Fight!~"
通常這是顯示在銀幕上的提示字幕,可被修改!
注意:中文化後,需另存新檔,編碼需改為UTF-8!


例子:
if (lastActivity < afk_info_time)
                                        client_print(i, print_chat, "[%s] 你還剩 %d 秒可以移動,否則時間到將會被踢離伺服器!", PREFIX, floatround(afk_info_time - afk_time))
                        }

其實我翻得不好,當時是照字面翻譯,應該要轉換一下,別太令人感到翻譯文!
應該要換成這樣比較好:
再過 %d 秒不動,就踢掉你!   

簡單明瞭!

小提示:
client_print   (這指得是玩家端印出字樣的函數)
%s   (這得要學C語言才懂,輸出字串型態的資料,s代表string)
%d  (輸出整數型態的資料,d代表decimal)
還有其他的像是%c (Character 字元), %f(float 浮點數) 等

print、printf,是C語言中的輸出(印出來)函數。

舉個例子:(這是我以C語言想出來的,AMX不是這樣寫的,我不知道它玩家名稱和殺敵數是怎麼取得的,這樣寫只是範例)
printf( "%s 殺了 %d 個敵人,殺紅了眼!" ,  playername , numofkill )

這是有對應的,除非你懂C語言,才可以把順序調換,改成這樣:
printf( "%d 個敵人被 %s 擊殺了,他殺紅了眼!" , numofkill  , playername  )

如要查看全部, 請登錄註冊 QQ登錄
回帖是一種美德

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 註冊

Archiver|手機版|HKCDC   

GMT+8, 2017-10-19 09:41 , Processed in 0.094860 second(s), 16 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回頂部