• 1084阅读
  • 4回复

研究源程序后的一点感想! [复制链接]

上一主题 下一主题
离线Robot5
 
发帖
156
祝福宝石
0
威望
559
玛雅之石
0
创造宝石
0
只看楼主 倒序阅读 使用道具 楼主  发表于: 2004-07-02

大概的看了一些程序后,感觉程序好象并不完全,不知道以后这个程序会不会继续完成下去!

!e7vc[N  

下面为服务端对 用户使用魔法的处理程序!

!e7vc[N  

源文件名为:RequestMagicSkillUse.class (文件名可翻译为:请求魔术技术使用) !e7vc[N  
反编译后内容如下:

!e7vc[N  

package net.sf.l2j.gameserver.clientpackets;

!e7vc[N  

import java.io.IOException; !e7vc[N  
import java.io.PrintStream; !e7vc[N  
import net.sf.l2j.gameserver.*; !e7vc[N  
import net.sf.l2j.gameserver.model.L2Character; !e7vc[N  
import net.sf.l2j.gameserver.model.L2Skill; !e7vc[N  
import net.sf.l2j.gameserver.serverpackets.*;

!e7vc[N  

public class RequestMagicSkillUse extends ClientBasePacket !e7vc[N  
{

!e7vc[N  

public RequestMagicSkillUse(byte rawPacket[], ClientThread client) !e7vc[N  
throws IOException !e7vc[N  
{ !e7vc[N  
super(rawPacket); !e7vc[N  
int magicId = readD(); !e7vc[N  
int data2 = readD(); !e7vc[N  
int data3 = readC(); !e7vc[N  
System.out.println("Request Magic Skill use"); !e7vc[N  
System.out.println("SkillId:" + magicId); !e7vc[N  
System.out.println("SkillLevel:" + data2); !e7vc[N  
System.out.println("data3:" + data3); !e7vc[N  
L2Character activeChar = client.getActiveChar(); !e7vc[N  
Connection con = client.getConnection(); !e7vc[N  
int level = 1; !e7vc[N  
L2Skill skill = SkillTable.getInstance().getInfo(magicId, level); !e7vc[N  
if(skill.isPassive()) !e7vc[N  
return; !e7vc[N  
if(skill.getCastRange() > 1 && activeChar.getTarget() != null) !e7vc[N  
{ !e7vc[N  
MoveToPawn move = new MoveToPawn(activeChar, activeChar.getTarget(), skill.getCastRange()); !e7vc[N  
con.sendPacket(move); !e7vc[N  
} !e7vc[N  
ActionFailed af = new ActionFailed(); !e7vc[N  
con.sendPacket(af); !e7vc[N  
MagicSkillUser msk = new MagicSkillUser(activeChar, magicId, level, skill.getSkillTime(), skill.getReuseDelay()); !e7vc[N  
con.sendPacket(msk); !e7vc[N  
SetupGauge sg = new SetupGauge(0, skill.getSkillTime()); !e7vc[N  
con.sendPacket(sg); !e7vc[N  
SystemMessage sm = new SystemMessage(46); !e7vc[N  
sm.addSkillName(magicId); !e7vc[N  
con.sendPacket(sm); !e7vc[N  
if(skill.getSkillTime() > 200) !e7vc[N  
{ !e7vc[N  
try !e7vc[N  
{ !e7vc[N  
Thread.sleep(skill.getSkillTime() - 200); !e7vc[N  
} !e7vc[N  
catch(InterruptedException e) { } !e7vc[N  
MagicSkillLaunched msl = new MagicSkillLaunched(activeChar, magicId, level); !e7vc[N  
con.sendPacket(msl); !e7vc[N  
} !e7vc[N  
StatusUpdate su = new StatusUpdate(activeChar.getObjectId()); !e7vc[N  
activeChar.reduceCurrentMp(skill.getMpConsume()); !e7vc[N  
su.addAttribute(StatusUpdate.CUR_MP, (int)activeChar.getCurrentMp()); !e7vc[N  
con.sendPacket(su); !e7vc[N  
if(skill.getOperateType() == L2Skill.OP_DURATION) !e7vc[N  
{ !e7vc[N  
MagicEffectIcons mei = new MagicEffectIcons(); !e7vc[N  
mei.addEffect(magicId, level, skill.getBuffDuration()); !e7vc[N  
con.sendPacket(mei); !e7vc[N  
} !e7vc[N  
sm = new SystemMessage(110); !e7vc[N  
sm.addSkillName(magicId); !e7vc[N  
con.sendPacket(sm); !e7vc[N  
} !e7vc[N  
} !e7vc[N  

!e7vc[N  

目前从这些程序上来看可以说,现在我们手里的程序还很不完善,不知道以后还会出更完善的不了?

!e7vc[N  

我也只是大概的看看了,有不对的地方还请大家指出。没时间仔细看了,先去睡一会在上来! !e7vc[N  
!e7vc[N  
俺的目的只是想扔个砖头,砸出个玉!哈哈!不行了去睡了!886

!e7vc[N  
[此贴子已经被作者于2004-7-2 7:22:07编辑过]
评价一下你浏览此帖子的感受

精彩

感动

搞笑

开心

愤怒

无聊

灌水
离线nafen
发帖
620
祝福宝石
0
威望
0
玛雅之石
0
创造宝石
0
只看该作者 沙发  发表于: 2004-07-02
能有心去做就好,帮你顶一下...我还不会汇编呢,加油吧
学习中....
离线zerphy
发帖
53
祝福宝石
0
威望
0
玛雅之石
0
创造宝石
0
只看该作者 板凳  发表于: 2004-07-02

从http://sourceforge.net/cvs/?group_id=109190就可以得到L2J服务端的源代码,根本不用反编译。这本来就是一个正在开发中的项目,当前的版本可能是v0.12,大部分功能都不完整,后续开发将陆续的完成这些部分。不过一旦韩国官方介入调查的话,不知道这个算不算犯法,开发还能维持多久。希望这个项目能够一直进行下去……我已经得到了整个项目的源码,大家可以从上面提供的地址利用CVS获得源码,如果不想太麻烦的话,哪位开一个FTP,我把代码传上去,有兴趣大家可以一起研究一下^_^

离线nafen
发帖
620
祝福宝石
0
威望
0
玛雅之石
0
创造宝石
0
只看该作者 地板  发表于: 2004-07-02

上面的兄弟....指点一下,哪个位置下>????我英盲

学习中....
离线zerphy
发帖
53
祝福宝石
0
威望
0
玛雅之石
0
创造宝石
0
只看该作者 4楼 发表于: 2004-07-03
需要下载CVS,版本控制的一个软件,都是英文的。如果需要的话,哪位开个FTP地址,我传上去~
快速回复
限100 字节
批量上传需要先选择文件,再选择上传
 
上一个 下一个

      管理员联系信箱 [email protected] 所有内容均来之互联网,如侵犯您的隐私和权益,请和我们及时联系!