[教程]【汉化】游戏教程第四章:改图片字为系统字

2012/2/1 8:48:00  人气 2343    怀旧国机论坛  
专题:改软教程
[reply]public i(Image image,DataInputStreamdataInputStream, Font font, int i1, intj1){int k;int i2;int j2;ch ar(这个字母中间加了空格,去掉) ch;if (image != null){a = image;……}else{a = font;a = i1;b = j1;a= j1 != -1;}}注:可以看到这个方法里牵连到了a这个变量,而这个变量的负责则是通过判断image这个量是不是null。然后看到else里a = font;这句话,意思就是给a(字体变量)赋值font量,可以理解为将系统字体赋给a。所以我们希望设法让这个方法一直去执行else,所以可以在if(image != null)前加上image =null; 这样一开始image的值就是null,就会去执行else里的部分。字节码中的:aload_1ifnull Label216对应的就是if (image != null)。(工具原因,手机端修改定位比电脑端要难。)aload_1是装载第一个(1)局部变量引用的对象压入栈。第一个局部变量则对应方法名里的image在第1位。在这里添加image=null,创建一个null量给image。aconst_nullastore_1如果要更加了解原理的话,可以看看Java字节码揭秘。需要注意的是astore_1中的这个“1”是根据之前的if(image != null)而定的。我们看第三行是aload_1,这里是1,那么astore_1,也要是1。依次,如果是aload_2,那么就应该是astore_2依次类推。aconst_nullastore_1这个代码段比较机械,大家可以记住。[/审核中reply]
下页    上页    全部    余下    
 

. 只是一个过客而已~

发表回复

   


  通知楼主
暂无回复!