사이트 로그인
2024.03.14 01:43
private void zizon(L1PcInstance pc){
Connection con33 = null;
int q = 0;
//int i = 0;
int x = pc.getExp();
try {
con33 = L1DatabaseFactory.getInstance().getConnection();
Statement pstm22 = con33.createStatement();
ResultSet rs22 = pstm22.executeQuery("SELECT `Exp`,`char_name` FROM `characters` WHERE AccessLevel != 9999 ORDER BY `Exp` DESC");
while (rs22.next()) {
q++;
if (!pc.isGm() && rs22.getInt("Exp") <= x) { // 영자일경우 제외
break;
}
}
if (q == 1) {
S_ChatPacket s_chatpacket = new S_ChatPacket (pc,"[" + Config.SERVER_NAME + "] 1위 ["+ pc.getName()+ "] 님이 오셨습니다.", Opcodes.S_OPCODE_MSG, 17); //13번 보라색 // 11번 주황색 // 12번 갈색
pc.sendPackets(s_chatpacket);
pc.setWhisper(true); //강제로!
pc.sendPackets(new S_CastleMaster(6, pc.getId()));
if (! pc.getInventory().checkItem(140738)) { // 랭킹1위지존 아이템지급 아이템은 알아서 넣고싶은걸로
L1ItemInstance item= pc.getInventory().storeItem(140738, 1);;//지급할지존아이템
L1World.getInstance().broadcastPacketToAll(
new S_CastleMaster(6, pc.getId()));
pc.sendPackets(new S_SystemMessage("\\fS서버랭킹1위가되셨습니다. 1위특화공격석을 얻으셨습니다."));
}
}
if (q == 2) {
S_ChatPacket s_chatpacket = new S_ChatPacket (pc,"[" + Config.SERVER_NAME + "] 2위 ["+ pc.getName()+ "] 님이 오셨습니다.", Opcodes.S_OPCODE_MSG, 17); //13번 보라색 // 11번 주황색 // 12번 갈색
pc.sendPackets(s_chatpacket);
pc.sendPackets(new S_CastleMaster(6, pc.getId()));
L1World.getInstance().broadcastPacketToAll(
new S_CastleMaster(6, pc.getId()));
}
if (q == 3) {
S_ChatPacket s_chatpacket = new S_ChatPacket (pc,"[" + Config.SERVER_NAME + "] 3위 ["+ pc.getName()+ "] 님이 오셨습니다.", Opcodes.S_OPCODE_MSG, 17); //13번 보라색 // 11번 주황색 // 12번 갈색
pc.sendPackets(s_chatpacket);
pc.sendPackets(new S_CastleMaster(7, pc.getId()));
L1World.getInstance().broadcastPacketToAll(
new S_CastleMaster(7, pc.getId()));
}
if (q == 4) {
S_ChatPacket s_chatpacket = new S_ChatPacket (pc,"[" + Config.SERVER_NAME + "] 4위 ["+ pc.getName()+ "] 님이 오셨습니다.", Opcodes.S_OPCODE_MSG, 17); //13번 보라색 // 11번 주황색 // 12번 갈색
pc.sendPackets(s_chatpacket);
pc.sendPackets(new S_CastleMaster(8, pc.getId()));
L1World.getInstance().broadcastPacketToAll(
new S_CastleMaster(8, pc.getId()));
}
if (q == 5) {
S_ChatPacket s_chatpacket = new S_ChatPacket (pc,"[" + Config.SERVER_NAME + "] 5위 ["+ pc.getName()+ "] 님이 오셨습니다.", Opcodes.S_OPCODE_MSG, 17); //13번 보라색 // 11번 주황색 // 12번 갈색
pc.sendPackets(s_chatpacket);
pc.sendPackets(new S_CastleMaster(8, pc.getId()));
L1World.getInstance().broadcastPacketToAll(
new S_CastleMaster(8, pc.getId()));
}
int test = q;
while(test>1){
if (test >= 2 ) {
pc.getInventory().consumeItem(140738, 1);//랭킹1위아이템삭제
test--;
}
}
rs22.close();//여기부터 아래까지 리소스삭제부분
pstm22.close();
con33.close();
} catch (Exception e) {
// TODO: handle exception
}
출처는 존님인거 같은데요? 안되시는분들 제가 해결보면 해결방법 올려드리겟습니다 ㅋㅋ 근데 잘되네여!!
허접한거지만 조금 리모델링 된거입니다ㅋㅋ 초보분들 화이팅요!!
[출처] [에바]랭커에게 선물지급 (비공개 카페)