엘릭서 제한풀기 소스 설명
소스위치
/src/l1j/server/server/clientpackets/C_RequestItemUSe.java
} else if (itemId == 40033) { // 검색 (엘릭서 힘)
if (pc.getBaseStr() < 25 && pc.getElixirStats() < 5) {
pc.addBaseStr((byte) 1); // 소의 STR치에+1
pc.setElixirStats(pc.getElixirStats() + 1);
pc.getInventory().removeItem(l1iteminstance , 1);
pc.sendPackets(new S_OwnCharStatus2(pc));
//broadcastToAll((new StringBuilder()).append("【").append(pc.getName()).append("】님이 힘 엘릭서를 드셨습니다.").toString());
pc.save();
; // DB에 캐릭터 정보를 기입한다
여기서 보시면
설명부분
이소스의 위치는 아이템 사용부분입니다.
앞부분은 다른 아이템 사용했을시고
} 그렇지않고 만약 (아이템 == 400033(힘엘릭)사용한다면) {
만약 (피시의 베이스힘을불러와서 25보다 작고 그리고 피씨엘릭서스텟을 불러와서 5보다 작다면) {
피씨 추가베이스힘 ((비트)1); // 힘 +1 시킨다는 것입니다.
피씨의 셋팅 엘릭서스텟(피씨엘릭서스텟을불러와() +1);
피시의 인벤토리를 불러와().사용한아이템(아이템인스턴스, 1); //L1Iteminstance의 파일을 불러와 사용한 아이템 1개를 소모시킨다는 뜻입니다.
피씨출력페킷(세로운스텟이 추가돼었습니다. 뭐이런식);
//broadcastToAll어쩌거 저쩌고는 전체 메세지로 먹은살람 공지 뛰우는 것입니다. 주석처리 되었으니 사용은 안됨.
피씨저장;
여기까지입니다.
똥개님한테 필요한것은
if (pc.getBaseStr() < 25 && pc.getElixirStats() < 5) { 이부분입니다.
만약 피씨베이스힘을 불러와서 25보다 작고 피씨엘릭서스텟을 불러와 5보다 작다면 입니다.
그렇다면
if (pc.getBaseStr() < 35 && pc.getElixirStats() < 5) { // 이렇게 바꿔주면
만약 피씨베이스힘을 불러와서 35보다 작고 피씨엘릭서스텟을 불러와 5보다 작다면 입니다.
그러면 35까지 엘릭서를 먹을수 있다는 뜻입니다. 그리고 옆에 엘릭서 겟수제한 5보다 작다면을
10으로 고치면 스텟 35되기전까지 총 10개의 엘릭서를 먹을수 있다는 뜻입니다.
그리고 이 10개는 엘릭서 스텟이니 모든 엘릭서를 뜻합니다.
그러니 엘릭서 하나당 10개씩이 아니라 총 10개를 먹을수 있다는 것입니다.
그리고 보나스로 하나더
pc.addBaseStr((byte) 1); // 소의 STR치에+1
이부분이 힘스텟 +1 시켜주는 부분입니다.
이것을 pc.addBaseStr((byte) 2); 이렇게 바꿔준다면 엘릭서 하나당 2스텟이 오릅니다.
그렇다면 엘릭서를 총 10개 먹게해놓고 2씩올라버리면 엘릭서 스텟도 2씩올라 총 5개 먹게 되는것이 아니냐는
생각을 가지는 분도 계실텐데 소스 보시면
힘스텟은 BaseStr 엘릭서 스텟은 ElixirStats 별개입니다.
그러므로 힘 2씩오르면서 총 10개의 엘릭서를 먹을수 있다는 것입니다.
출처 구글링

인게임 님의 최근 댓글
클라도 아르카나져 그럼? 2024 04.19 구매하려고 하는데 뭐가 좋나요 2024 04.16 ㄳ 2024 04.15 친구추가 하려하니 사용자명을 올바르게 입력하래요 2024 04.13 포트가 문제였어요 감사합니다 2024 04.10