最近下了个游戏叫木石世纪(Timber and Stone),沙盒游戏类,看着还不错.
搜了下游戏资料,有人求汉化但是由于是小众游戏,没人出汉化.看了眼是Unity3d的,既然是.Net的,只要资源不是在资源包里,应该都还是蛮简单的.
刚开始做了个字符串替换,发现有些地方还是比较麻烦,还不如拿UnityEngine里面的GUI函数开刀,也就是有了这么一次简单的哦汉化过程.
首先写个简单的类用于注入
public class TxtInjection
{
public static string DoInjection(string txt)
{
return txt + "X";
}
}
注入成功后,所有的被注入的字符串后面都应该出现一个X;
然后写个小的示例,用于IL参考:
public static void Label(object position, string text, object style)
{
text = DoInjection(text);
LabelA(position, text, style);
}
public static void LabelA(object position, string text, object style)
{
}
text = DoInjection(text);
就是我们修改字符串的地方了.