펫레이싱
C_Attr.java
//////////////////////펫레이싱 by린프리덤...
import java.util.Random;
import l1j.server.server.model.L1PetRace;
import l1j.server.server.model.L1PetMember;
import l1j.server.server.model.skill.L1SkillUse;
import l1j.server.server.model.Instance.L1NpcInstance;
/////////////////////펫레이싱 by린프리덤..
/////////////////펫레이싱 by린프리덤..
case 1256: // 경기장 입장할래?? (Y/N)
c = readC();
if (c == 0) { // No
pc.sendPackets(new S_ServerMessage(1255, ""));
} else if (c == 1) { // Yes
L1PetRace pe = L1World.getInstance().getPetRace();
if(pe != null && pe.isMember(pc)){ // 레이스 멤버면
pe.addMember(pc);
Random random = new Random(); // 펫레이싱
int locx = 32767 + random.nextInt(2);
int locy = 32848 + random.nextInt(2);
new L1SkillUse().handleCommands(pc, 44, pc.getId(), pc.getX(), pc.getY(), null,0, L1SkillUse.TYPE_LOGIN);
L1Teleport.teleport(pc, locx, locy, (short) 5143, 5, true);
}
}
break;
///////////////////펫레이싱
C_NPCAction.java
//////////펫레이싱 by린프리덤
import l1j.server.server.model.L1PetRace;
import l1j.server.server.model.L1PetMember;
///////////펫레이싱
} else if (npcId == 80088) { 검색
htmlid = enterPetMatch(pc, Integer.valueOf(s2));
/////////////펫레이싱 by린프리덤
} else if (npcId == 300000) {
htmlid = enterPe(pc, npcId);
///////////by린프리덤
제일밑에....
///////////펫레이싱 by린프리덤...
private String enterPe(L1PcInstance pc, int npcId) {
L1PetMember pm = L1World.getInstance().getPetMember();
L1PetRace pe = L1World.getInstance().getPetRace();
if (pe == null) { // 시간외
pc.sendPackets(new S_SystemMessage("펫 레이싱 경기는 준비중입니다."));
return "";
}
if (pe.isNowPet()) { // 경기중
pc.sendPackets(new S_ServerMessage(1182, ""));
return "";
}
if (pe.getMembersCount() > 10) { // 정원 오버
pc.sendPackets(new S_ServerMessage(1229, ""));
return "";
}
if (pe.isMember(pc)) { // 이미맴버라면
pc.sendPackets(new S_ServerMessage(1254, ""));
return "";
}
if (pe.isInTime()) { // 입장대기 1분이라면
pe.addMember(pc);
Random random = new Random(); // 펫레이싱
int locx = 32767 + random.nextInt(2);
int locy = 32848 + random.nextInt(2);
new L1SkillUse().handleCommands(pc, 44, pc.getId(), pc.getX(), pc.getY(), null,0, L1SkillUse.TYPE_LOGIN);
L1Teleport.teleport(pc, locx, locy, (short) 5143, 5, true);
return "";
}
pe.addMember(pc); // 멤버에게 추가
pc.sendPackets(new S_ServerMessage(1253, "" + pe.getMembersCount() + ""));
return "";
}
////////////펫레이싱 by린프리덤..
@Override
public String getType() {
return C_NPC_ACTION;
}
}
GMCommands.java
import l1j.server.server.model.L1PetRace;//////펫레이싱 by린프리덤..
} else if (cmd.equalsIgnoreCase("펫레이싱")) {
PetRace(gm); //////////by 린프리덤..
//////////////////펫레이싱 by린프리덤..
private void PetRace(L1PcInstance gm) {
try {
L1PetRace pe11 = new L1PetRace();
if(!pe11.isStartGame()){
pe11.start(1); // 스타트
L1World.getInstance().setPetRace(pe11);
}else{
gm.sendPackets(new S_SystemMessage("이미 펫 레이싱이 시작했습니다."));
}
} catch (Exception e) {
}
}
/////////////////////펫레이싱 by린프리덤...
L1World.java
///////////펫레이싱 by린프리덤..
private L1PetRace _PetRace = null;
private L1PetMember _PetMember = null;
private L1PetRaceEnd _PetRaceEnd = null;
//////////펫레이싱
public boolean isProcessingContributionTotal() {
return _processingContributionTotal;
/////////펫레이싱
}
public L1PetMember getPetMember() {
return _PetMember;
}
public void setPetMember(L1PetMember pm) {
_PetMember = pm;
}
public L1PetRace getPetRace() {
return _PetRace;
}
public void setPetRace(L1PetRace pe) {
_PetRace = pe;
}
public L1PetRaceEnd getPetRaceEnd() {
return _PetRaceEnd;
}
public void setPetRaceEnd(L1PetRaceEnd pe2) {
_PetRaceEnd = pe2;
}
////////펫레이싱
/**
* 월드상에 존재하는 모든 플레이어에 패킷을 송신한다.
*
* @param packet
* 송신하는 패킷을 나타내는 ServerBasePacket 오브젝트.
*/
public void broadcastPacketToAll(ServerBasePacket packet) {
_log.finest("players to notify : " + getAllPlayers().size());
for (L1PcInstance pc : getAllPlayers()) {
pc.sendPackets(packet);
}
}
//////////////////////////////////////////////////////////////////
같이동봉한 5143맵은 팩 maps폴더에 넣어주세여 .......
나비켓해야할사항....
mapids 테이블에서 5143맵이름을 Pet Race 변경..
npc 테이블추가 .......
300000 펫 레이싱 관리인 두포 $5524 펫 레이싱 관리인 두포 L1Merchant 118 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 0 0
npcaction테이블추가.....
300000 dufo dufo
에바 소스 게임정보 커뮤니티 팝존 http://popzone.co.kr/

로스트사가 님의 최근 댓글
감사합니다. 2019 06.13 감사합니다. 2019 06.12 감사합니다. 2019 05.03 감사합니다. 2019 05.03 감사합니다. 2018 03.11