📄 gamescreen.java
字号:
{
if(mode == 3 || mode == 1 && gamemode == 1 && sticker)
{
dticker = 9;
keycode = 0;
} else
{
keycode = i;
}
return;
}
int j = getGameAction(i);
switch(j)
{
case 1: // '\001'
keycode = 50;
break;
case 6: // '\006'
keycode = 56;
break;
case 2: // '\002'
keycode = 52;
break;
case 5: // '\005'
keycode = 54;
break;
case 8: // '\b'
keycode = 53;
break;
case 3: // '\003'
case 4: // '\004'
case 7: // '\007'
default:
keycode = i;
break;
}
} else
{
key = -1;
switch(i)
{
case 48: // '0'
key = 0;
break;
case 49: // '1'
key = 1;
break;
case 50: // '2'
key = 2;
break;
case 51: // '3'
key = 3;
break;
case 52: // '4'
key = 4;
break;
case 53: // '5'
key = 5;
break;
case 54: // '6'
key = 6;
break;
case 55: // '7'
key = 7;
break;
case 56: // '8'
key = 8;
break;
case 57: // '9'
key = 9;
break;
case -8:
if(cursorpos > 0)
{
if(cursorpos == playerName.length())
playerName = playerName.substring(0, cursorpos - 1);
else
playerName = playerName.substring(0, cursorpos) + playerName.substring(cursorpos + 1);
cursorpos--;
} else
if(playerName.length() > 0)
playerName = playerName.substring(1);
break;
case -6:
enterPlayerName();
break;
default:
int k = getGameAction(i);
switch(k)
{
default:
break;
case 2: // '\002'
if(cursorpos > 0)
{
cursorpos--;
keywaitcnt = -1;
keyi = 0;
}
break;
case 5: // '\005'
if(cursorpos < playerName.length())
{
cursorpos++;
keywaitcnt = -1;
keyi = 0;
}
break;
case 8: // '\b'
enterPlayerName();
break;
}
break;
}
if(key != -1)
{
if(lastkey == key)
{
keyi = (keyi + 1) % keyboard[key].length();
keywaitcnt = 0;
} else
{
keyi = 0;
if(cursorpos < 8 && lastkey > -1)
cursorpos++;
keywaitcnt = -1;
}
enteredkey = keyboard[key].charAt(keyi);
lastkey = key;
keywaitcnt = 0;
if(cursorpos >= playerName.length())
playerName = playerName + enteredkey;
else
playerName = playerName.substring(0, cursorpos) + enteredkey + playerName.substring(cursorpos + 1);
}
}
}
public void keyReleased(int i)
{
if(i == -7)
dticker = 3;
}
public void keyRepeated(int i)
{
if(i != -6 && i != -7)
keyPressed(i);
}
public void keymove()
{
if(mode == 1)
{
if(gamemode == 1)
{
if(keycode == -6)
setMenu();
else
if(keycode == -7)
{
mode0 = mode;
helpFromMenu = false;
help();
} else
{
int i = cursori;
int j = cursorj;
switch(keycode)
{
case 49: // '1'
if(cursorj < 63)
j = cursorj + 1;
break;
case 50: // '2'
if(cursori < 63 && cursorj < 63)
{
i = cursori + 1;
j = cursorj + 1;
}
break;
case 51: // '3'
if(cursori < 63)
i = cursori + 1;
break;
case 52: // '4'
if((cursori & 1) == (cursorj & 1))
{
if(cursori > 0)
i = cursori - 1;
} else
if(cursorj < 63)
j = cursorj + 1;
break;
case 53: // '5'
if(gw.lv.map[cursorj][cursori] == 1)
gamemode = 2;
break;
case 54: // '6'
if((cursori & 1) == (cursorj & 1))
{
if(cursorj > 0)
j = cursorj - 1;
} else
if(cursori < 63)
i = cursori + 1;
break;
case 55: // '7'
if(cursori > 0)
i = cursori - 1;
break;
case 56: // '8'
if(cursori > 0 && cursorj > 0)
{
i = cursori - 1;
j = cursorj - 1;
}
break;
case 57: // '9'
if(cursorj > 0)
j = cursorj - 1;
break;
case 42: // '*'
gamemode = 5;
keycode = 0;
break;
case 48: // '0'
gamemode = 3;
keycode = 0;
break;
case 35: // '#'
needmap = true;
gamemode = 4;
keycode = 0;
break;
}
if((gw.lv.flags[j][i] & 1) == 0)
{
cursorj = j;
cursori = i;
}
}
} else
if(gamemode == 2)
switch(keycode)
{
case -6:
if(canbuild)
{
gw.gm.build(cursori, cursorj);
gamemode = 1;
}
break;
case 53: // '5'
if(canbuild)
gw.gm.build(cursori, cursorj);
gamemode = 1;
break;
case -7:
gamemode = 1;
break;
case 52: // '4'
if(buildNum > 0)
buildNum--;
break;
case 54: // '6'
if(buildNum < 16)
buildNum++;
break;
}
else
if(gamemode == 4)
{
if(keycode == -6 || keycode == 53 || keycode == 35)
gamemode = 1;
} else
if(gamemode == 3)
switch(keycode)
{
case 50: // '2'
if(stockicony < 0)
stockicony += 40;
break;
case 56: // '8'
if(stockicony > -(400 - scrH))
stockicony -= 40;
break;
case -6:
case 48: // '0'
case 53: // '5'
gamemode = 1;
break;
}
else
if(gamemode == 5)
switch(keycode)
{
case 50: // '2'
if(buildsscreeny < 0)
buildsscreeny += 40;
break;
case 56: // '8'
if(buildsscreeny > -(440 - scrH))
buildsscreeny -= 40;
break;
case -6:
case 42: // '*'
case 53: // '5'
gamemode = 1;
break;
}
} else
if(mode == 3)
{
if(keycode == -6 || keycode == 53)
if(!gw.gm.gameover)
startMainScreen();
else
beginPlayerName();
} else
if(mode == 4)
{
if(keycode == 50)
{
if(selecteditem > menui0)
selecteditem--;
} else
if(keycode == 56)
{
if(selecteditem < menulen - 1)
selecteditem++;
} else
if(keycode == 53 || keycode == -6)
{
if(menumode == 0)
switch(selecteditem)
{
case 0: // '\0'
if(!newGame)
startMainScreen();
else
if(hassave)
continueGame();
break;
case 1: // '\001'
menumode = 2;
selecteditem = country;
menutitle = "Region";
break;
case 2: // '\002'
helpFromMenu = true;
help();
break;
case 3: // '\003'
menumode = 1;
selecteditem = 0;
menutitle = "Options";
break;
case 4: // '\004'
menumode = 3;
selecteditem = 0;
menutitle = "HI-SCORES";
break;
case 5: // '\005'
startLogo();
break;
case 6: // '\006'
gw.quit();
break;
}
else
if(menumode == 1)
{
if(selecteditem == 0)
{
sound = !sound;
if(sound)
try
{
themeSnd.start();
}
catch(Exception exception) { }
else
try
{
themeSnd.stop();
}
catch(Exception exception1) { }
} else
if(selecteditem == 1)
vibration = !vibration;
else
if(gw.st.locint == 0)
gw.st.setLocale("ru");
else
gw.st.setLocale("en");
} else
if(menumode == 2)
{
country = selecteditem;
start();
} else
if(menumode == 3)
{
if(selecteditem == 0)
{
if(gw.gm.scores > 0)
{
menumode = 4;
selecteditem = 0;
menutitle = "Local";
} else
{
hiscoresFromMenu = true;
localhiscores = true;
addscores = false;
drawHiScores();
}
} else
if(gw.gm.scores > 0)
{
menumode = 5;
selecteditem = 0;
menutitle = "Online";
} else
{
hiscoresFromMenu = true;
localhiscores = false;
addscores = false;
drawHiScores();
}
} else
if(menumode == 4)
{
localhiscores = true;
hiscoresFromMenu = true;
if(selecteditem == 0)
{
addscores = false;
drawHiScores();
} else
{
addscores = true;
beginPlayerName();
}
} else
if(menumode == 5)
{
hiscoresFromMenu = true;
localhiscores = false;
if(selecteditem == 0)
{
addscores = false;
drawHiScores();
} else
{
addscores = true;
beginPlayerName();
}
}
} else
if(keycode == -7 || keycode == 52)
if(menumode == 1)
{
menumode = 0;
menutitle = "Menu";
selecteditem = 3;
} else
if(menumode == 2)
{
menumode = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -