펫레이싱 본섭화 하기~
경로: l1j.server.server.model.DungeonRandom
public boolean dg(int locX, int locY, int mapId, L1PcInstance pc) {
String key = new StringBuilder().append(mapId).append(locX)
.append(locY).toString();
if (_dungeonMap.containsKey(key)) {
int rnd = _random.nextInt(5);
NewDungeonRandom newDungeonRandom = _dungeonMap.get(key);
short newMap = newDungeonRandom._newMapId[rnd];
int newX = newDungeonRandom._newX[rnd];
int newY = newDungeonRandom._newY[rnd];
int heading = newDungeonRandom._heading;
// 2초간은 무적(아브소르트바리아 상태)으로 한다.
pc.setSkillEffect(L1SkillId.ABSOLUTE_BARRIER, 2000);
pc.stopHpRegeneration();
pc.stopMpRegeneration();
pc.stopMpRegenerationByDoll();
L1Teleport.teleport(pc, newX, newY, newMap, heading, true);
return true;
}
return false;
}
public boolean dg(int number, L1PcInstance pc) {
if (_dungeonMap.containsKey(number)) {
int rnd = _random.nextInt(5);
NewDungeonRandom newDungeonRandom = _dungeonMap.get(number);
short newMap = newDungeonRandom._newMapId[rnd];
int newX = newDungeonRandom._newX[rnd];
int newY = newDungeonRandom._newY[rnd];
int heading = newDungeonRandom._heading;
// 2초간은 무적(앱솔루트 배리어 상태)으로 한다.
pc.setSkillEffect(L1SkillId.ABSOLUTE_BARRIER, 2000);
pc.stopHpRegeneration();
pc.stopMpRegeneration();
L1Teleport.teleport(pc, newX, newY, newMap, heading, true);
return true;
}
return false;
}
public int size(){
return _randomMap.size();
}
경로:l1j.server.server.model.Haunted_door
이자바가 없는 분들도 있을꺼 같아서 올립니다
없는분은 새로 만들어서 컴파일 하세요
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2, or (at your option)
* any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* http://www.gnu.org/copyleft/gpl.html
*/
package l1j.server.server.model;
import java.util.ArrayList;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.PreparedStatement;
import l1j.server.L1DatabaseFactory;
import l1j.server.server.types.Point;
import l1j.server.server.utils.SQLUtil;
import l1j.server.server.model.L1World;
import l1j.server.server.model.L1Object;
import l1j.server.server.model.DungeonRandom;
import l1j.server.server.model.skill.L1SkillId;
import l1j.server.server.model.skill.L1SkillUse;
import l1j.server.server.serverpackets.S_SkillHaste;
import l1j.server.server.serverpackets.S_SkillSound;
import l1j.server.server.model.Instance.L1PcInstance;
import l1j.server.server.model.Instance.L1DoorInstance;
import l1j.server.server.serverpackets.S_EffectLocation;
import l1j.server.server.model.poison.L1ParalysisPoison;
public class Haunted_door{
private static Haunted_door instance;
public static Haunted_door getInstance() {
if(instance == null) instance = new Haunted_door();
return instance;
}
private Haunted_door(){}
public void open(L1PcInstance c){
Connection con = null;
PreparedStatement p = null;
ResultSet r = null;
try {
con = L1DatabaseFactory.getInstance().getConnection();
p = con.prepareStatement("select * from haunted_door where x=? and y=? and map=?");
p.setInt(1, c.getX());
p.setInt(2, c.getY());
p.setInt(3, c.getMap().getId());
r = p.executeQuery();
// 해당 좌표로 이동했다면..
if(r.next()){
// 문번호로 객체 찾기
L1DoorInstance door = Find(c);
if(door != null){
// 문 열기
door.open();
c.sendPackets(new S_SkillSound(door.getId(), 6338));
}
// 이펙트
c.sendPackets(new S_EffectLocation(new Point(r.getInt(2), r.getInt(3)), 6333));
}
}catch(Exception e){
}finally{
SQLUtil.close(r);
SQLUtil.close(p);
SQLUtil.close(con);
}
}
// npcId 로 찾기
private L1DoorInstance Find(L1PcInstance c){
L1DoorInstance door = null;
ArrayList<L1Object> sTemp = L1World.getInstance().getVisibleObjects(c, 2);
for(L1Object o : sTemp.toArray(new L1Object[sTemp.size()])){
if(o instanceof L1DoorInstance){
door = (L1DoorInstance) o;
break;
}
}
return door;
}
}

최강빅토리 님의 최근 댓글
날짜는 변경했구요..그래도 안되네요~클라를 다시 구해서 해봐야겠네요 ㅜㅜ 2016 06.23