【Java教學】裝備+10武器出現魔法特效
參考99版內的私服內容介紹(避免廣告嫌疑,故請版友自行尋找吧!!)
參考修改 missu0524 大 所發的 持續魔法特效 網頁如右 http://bbs.99nets.com/read.php?tid=758269&fpage=2
停止開關<下段停止開關,也是另個解決點,可以參考看看>
開啟 L1PcInstance
找到 private MpReductionByAwake _mpReductionByAwake;
- 在下方新增 [code]private SkillSound _SkillSound;//add 修改持續出現魔法特效 by missu0524
找到 private boolean _mpReductionActiveByAwake;
在下方新增
- private boolean _SkillSoundActive;//add 修改持續出現魔法特效 by missu0524
找到 missu0524 大所寫的這段
public void startSkillSound() {
final int INTERVAL = 4000; // 間隔時間
SkillSound SkillSound;
SkillSound = new SkillSound(this);
_regenTimer.scheduleAtFixedRate(SkillSound,
INTERVAL, INTERVAL);
}
!!0523修改處 SkillSound
修改成,下面如此........此法是llllllkk96,所找出的問題點,感謝他的提供嚕!!
- // add Mr香 新增 持續出現魔法特效 by missu0524
- public void startSkillSound() {
- final int INTERVAL = 4000; // 間隔時間
- if (!_SkillSoundActive) {
- //SkillSound SkillSound;
- _SkillSound = new SkillSound(this);
- _regenTimer.scheduleAtFixedRate(_SkillSound,
- INTERVAL, INTERVAL);
- _SkillSoundActive = true;
- }
- }
在下方 新增
- public void stopSkillSound() {
- if (_SkillSoundActive) {
- SkillSound SkillSound;
- _SkillSound.cancel();
- _SkillSound = null;
- _SkillSoundActive = false;
- }
- }
停止開關,結束!!
本文開始了,請大家先裝設好 m大 的持續魔法特效
再來 就是對 SkillSound .java 做修改 !!0523有做修改
找到下面這段
- public void run() {
- try {
- if (_pc.isDead()) {
- return;
- }
再下方新增一段
- //+10up 所有武器
- if(_pc.getWeapon().getEnchantLevel() > 5 &&
- _pc.getWeapon().getEnchantLevel() <= 9){
- _pc.sendPackets(new S_SkillSound(_pc.getId(), 4397)); //自己看得見
- _pc.broadcastPacket(new S_SkillSound(_pc.getId(), 4397));//其他人看得見
- }else if(_pc.getWeapon().getEnchantLevel() > 9){ // 9;加 9 武器 以上的武器出現特效,自行替換
- _pc.sendPackets(new S_SkillSound(_pc.getId(), 4397)); //自己看得見
- _pc.broadcastPacket(new S_SkillSound(_pc.getId(), 4397));//其他人看得見
- //下面是自動停止
- }else {
- return; //0521增加這個就搞定了= ="
- }
這邊有個疑問提醒
就是不知道開放這種特效會否造成LAG,所以建議在條件那多加組CONFIG控制開關(ON/OFF)
而特效是否開放別人也看得到,請自行斟酌。LAG的影響,我無法判斷
會有一支青龍一直跑出來的大大們,請把下面這句 註解掉
//_pc.sendPackets(new S_SkillSound(_pc.getId(), 6588));
再來就打開 L1EquipmentSlot.java
收尋
-
- private void setWeapon(L1ItemInstance weapon) {
- int itemId1 = weapon.getItem().getItemId();
- _owner.setWeapon(weapon);
- _owner.setCurrentWeapon(weapon.getItem().getType1());
- weapon.startEquipmentTimer(_owner);
- _weapon = weapon;
在它下面,增加
- //+10up 所有武器
- if (_owner.getWeapon().getEnchantLevel() > 9){ // 9;加 9 武器 以上的武器出現特效,自行替換
- _owner.startSkillSound();
- }
注意,下面還有一個 }
別自動把他刪除了
這樣的設置完成了
至於間隔多久出現魔法特效的時間
找到 missu0524 大所寫的這段
public void startSkillSound() {
final int INTERVAL = 4000; // 間隔時間
SkillSound SkillSound;
SkillSound = new SkillSound(this);
_regenTimer.scheduleAtFixedRate(SkillSound,
INTERVAL, INTERVAL);
}
間隔時間 = 多久一次,出現魔法特效的時間
在此我建議各位,可以多加一組間隔時間
可以方便你 skillsound 中的其他用途,做區隔!!
增加方法,若是不會
請點閱小弟的 簡易自動補血道具 裡頭有教學,稍微仔細看一下並作些微修改,就可以了!!
by 狼人香
沒有留言:
張貼留言