안녕하세요. 말똥이입니다.
이번 포스팅은 거의 메모라 보시면 됩니다.
저번 포스팅에서 0번에다가(첫번째에다가) 자신의 서버를 뛰었는데
그거 수정 막기입니다.
해야될거
Shift를 이용한 0번 위치이동 막기
0번은 수정불가
Shift를 이용한 0번 위치이동 막기
GuiSlotServer.java
if (par2 && var5)
{
GuiMultiplayer.func_74008_b(this.parentGui, par1);
}
아래에 else if 문에
var3 != 0 && GuiMultiplayer.getSelectedServer(this.parentGui) != 0
를 추가
GuiMultiplayer.java
if (isShiftKeyDown() && par2 == 200)
{
if (var3 > 0 && var3 < this.internetServerList.countServers())
{
this.internetServerList.swapServers(var3, var3 - 1);
--this.selectedServer;
if (var3 < this.internetServerList.countServers() - 1)
{
this.serverSlotContainer.func_77208_b(-this.serverSlotContainer.slotHeight);
}
}
}
else if (isShiftKeyDown() && par2 == 208)
{
if (var3 < this.internetServerList.countServers() - 1)
{
this.internetServerList.swapServers(var3, var3 + 1);
++this.selectedServer;
if (var3 > 0)
{
this.serverSlotContainer.func_77208_b(this.serverSlotContainer.slotHeight);
}
}
}
else if (par1 == 13)
{
this.actionPerformed((GuiButton)this.buttonList.get(2));
}
else
{
super.keyTyped(par1, par2);
}
이걸 var3 != 0를 체크하는 if문으로 감싸기
0번 수정불가하게 만들기
GuiSlotServer.java
GuiMultiplayer.getButtonEdit(this.parentGui).enabled = var6;
GuiMultiplayer.getButtonDelete(this.parentGui).enabled = var6;
이걸
if (GuiMultiplayer.getSelectedServer(this.parentGui) != 0) {
GuiMultiplayer.getButtonEdit(this.parentGui).enabled = var6;
GuiMultiplayer.getButtonDelete(this.parentGui).enabled = var6;
}
else
{
GuiMultiplayer.getButtonEdit(this.parentGui).enabled = false;
GuiMultiplayer.getButtonDelete(this.parentGui).enabled = false;
}
이렇게 if문으로 감싼다.
위에 var3으로 해도 된다고 생각하면 오산.
var3은 수정되기전에 정보라 var3 넣으면 다음클릭때 enabled가 false로 바뀌는 일이 일어난다.
그러면 수정불가하게 된다.