사이트 로그인
2020.08.11 11:25
gameserver\data\scripts\system\handlers\admincommands폴더에 보시면
운영자명령에 관한 java파일들이 있습니다.
add.java 로 설명 하겟습니다.
메모장으로 add.java 파일을 여세요
그러면 add라는 명령의 시작은 아래와 같이 시작됩니다.
private ItemService itemService;
public Add()
{
super("add");
}
여기서 저 파란색이 명령어 인식하는 부분 입니다.
게임에서 //add 요렇게 쓰죠. 거기를 "생성" 이렇게 바꿔 주시면 //생성 으로 사용할수
있습니다.
그다음에는 출력되는 메세지 관련된 부분인데 거기를 찾아보면
if(admin.getCommonData().getAdminRole() < AdminConfig.COMMAND_ADD)
{
PacketSendUtility.sendMessage(admin, "You dont have enough rights to execute this command");
return;
}
자 저부분은 권한이 없는 사용자가 명령어를 실행 했을때 에러 메세지를 출력하는
부분입니다.
" " 안의 파란색 문장이 메세지 입니다. 내용은 본인의 취향에 맞게 수정하시면
되죠.. 넌 이명령 사용할수 없어 라든가....
if(params.length == 0 || params.length > 2)
{
PacketSendUtility.sendMessage(admin, "syntax //add <item ID> <quantity>");
return;
}
이부분은 명령어 형식이 틀렸을때의 메세지입니다...
catch (NumberFormatException e)
{
PacketSendUtility.sendMessage(admin, "Parameters need to be an integer.");
return;
}
요부분은 입력값이 범위를 벗어났을때
if(item == null)
{
PacketSendUtility.sendMessage(admin, "Item template was not found for this itemId");
return;
}
이부분은 없는 아이템 코드를 입력했을때
PacketSendUtility.sendPacket(admin, new SM_INVENTORY_UPDATE(Collections.singletonList(addedItem)));
PacketSendUtility.sendMessage(admin, "Item added successfully");
}
이부분은 성공적으로 아이템이 생성되었을때
else
{
itemService.releaseItemId(item);
PacketSendUtility.sendMessage(admin, "Item couldn't be added");
}
이부분은 아이엠 생성에 실패했을때의 메세지입니다.
" "안의 파란색부분을 본인의 취향에 맞게 수정하셔서 사용하시면 나만의 운영자 명령어가 됩니다..