主页| 免费发布天堂1开机信息| 站长qq:1161903

java教学 集体加速卷轴

来源:2TT天堂发布网 www.2tt.cc    发布时间:2018/9/4 0:55:01    浏览量:1003


(10/14)召宠部份补上自己的主人XD...因为只有在自己上线的情况下测试,往往不知道玩家们画面是否会有效果...
(10/11)今天有机会开给朋友玩,才发现对组队或血盟成员的地方有写得不完全,改正

最近开窍了XD?...(被殴)
我自己是做了可对全体施放各种补助效果<一次写入private>:加速、勇水效果、体魄、通畅、、、补助魔法等等。
不过大致上做法都一样,所以我只贴加速部份...
其他的以此类推就能做出来,相信你们看了之后就会明白Orz

修改的档案:C_ItemUSe
C_ItemUSe
1. }else if(itemId == 60041){//集体魔法卷轴:集体加速卷轴(测试)
2.        useMassSkillEffect(pc,300,755,1,true,true);
3.        pc.getInventory().removeItem(l1iteminstance, 1);
複製代码
1. //集体魔法卷轴:集体加速卷轴 by13630020
2. private void useMassSkillEffect(L1PcInstance player, int time, int castgfx, int moveSet, boolean isPc, boolean isNpc) {
3. ListtargetPc = L1World.getInstance().getVisiblePlayer(player);
4. ListtargetNpc = L1World.getInstance().getVisibleObjects(player);
5. boolean isAgree = false;
6. for (L1Object tgobj : targetNpc) {//对宠物或召唤
7.        if (tgobj instanceof L1SummonInstance
8.                || tgobj instanceof L1PetInstance) {
9.                isAgree=true;
10.        }
11.        if(isAgree){
12.                if(isNpc){//是否给宠物或召唤
13.                        L1NpcInstance npc = (L1NpcInstance) tgobj;
14.                        if((npc instanceof L1SummonInstance || npc instanceof L1PetInstance)
15.                                && npc.getMaster() == player){
16.                        npc.broadcastPacket(new S_SkillSound(npc.getId(), castgfx));
17.                        npc.setMoveSpeed(moveSet);
18.                        npc.setSkillEffect(STATUS_HASTE, time * 1000);
19.                        }
20.                }
21.        }
22. }
23. for (L1PcInstance pc : targetPc) {
24.        if (pc.getClanid() == player.getClanid()
25.                || pc.getPartyID() == player.getPartyID()) {//对同盟或组队成员
26.                isAgree=true;
27.        }
28.        if(isAgree){
29.                if(isPc){
30.                        if (pc.getClanid() == player.getClanid()
31.                                || pc.getPartyID() == player.getPartyID()) {//是否给同盟或组队成员
32.                        pc.sendPackets(new S_SkillSound(pc.getId(), castgfx));
33.                        pc.broadcastPacket(new S_SkillSound(pc.getId(), castgfx));
34.                        pc.sendPackets(new S_SkillHaste(pc.getId(), 1, time));
35.                        pc.broadcastPacket(new S_SkillHaste(pc.getId(), 1, 0));
36.                        pc.setMoveSpeed(moveSet);
37.                        pc.setSkillEffect(STATUS_HASTE, time * 1000);
38.                        pc.sendPackets(new S_ServerMessage(183));//\f1你的腿得到新的能量。
39.                        }
40.                }
41.        }
42. }
43. //最后也必须给自己效果
44.        player.broadcastPacket(new S_SkillSound(player.getId(), castgfx));
45.        player.sendPackets(new S_SkillSound(player.getId(), castgfx));
46.        player.sendPackets(new S_SkillHaste(player.getId(), 1, time));
47.        player.broadcastPacket(new S_SkillHaste(player.getId(), 1, 0));
48.        player.setMoveSpeed(moveSet);
49.        player.setSkillEffect(STATUS_HASTE, time * 1000);
50.        player.sendPackets(new S_ServerMessage(183));//\f1你的腿得到新的能量。
51. //使用者施法动作(19)
52. player.sendPackets(new S_DoActionGFX(player.getId(),ActionCodes.ACTION_SkillBuff));
53. player.broadcastPacket(new S_DoActionGFX(player.getId(),ActionCodes.ACTION_SkillBuff));
54. }
55. // end
複製代码
简介一下
useMassSkillEffect{player<使用者>,time<时间(t秒)>,castgfx<图档>,moveSet<速度值:1(加速)2(缓速XD)>
,isPc<是否给同伴true/false>,isNpc<是否给召宠true/false>}

这样就完成萝^^!!


PS:13630020←懒人+1