📄 sfcanvas.java
字号:
switch (ac[(itemcho - 1) + (i - 1) * 3])
{
case 49: // '1'
heroSprite.itemlv = 1;
break;
case 50: // '2'
heroSprite.itemlv = 2;
break;
case 51: // '3'
heroSprite.itemlv = 3;
break;
case 52: // '4'
heroSprite.itemlv = 4;
break;
}
ac[(itemcho - 1) + (i - 1) * 3] = tempitem;
} else
if (ac[(itemcho - 1) + (i - 1) * 3] == '5')
{
heroSprite.hp = heroSprite.maxhp;
ac[(itemcho - 1) + (i - 1) * 3] = '0';
}
} else
if (isChkdel)
ac[(itemcho - 1) + (i - 1) * 3] = '0';
else
isDelpress = false;
try
{
rs.setRecord(myid, heroSprite.chgTorms(false), 0, heroSprite.chgTorms(false).length);
}
catch (Exception exception)
{
System.out.println(exception);
}
}
for (int j = 0; j < 3; j++)
switch (ac[j + (i - 1) * 3])
{
case 48: // '0'
g.drawString("无装备物品", 50, 105 + j * 15, 20);
break;
case 49: // '1'
g.drawString("第一等级装备", 50, 105 + j * 15, 20);
break;
case 50: // '2'
g.drawString("第二等级装备", 50, 105 + j * 15, 20);
break;
case 51: // '3'
g.drawString("第三等级装备", 50, 105 + j * 15, 20);
break;
case 52: // '4'
g.drawString("第四等级装备", 50, 105 + j * 15, 20);
break;
case 53: // '5'
g.drawString("补血药瓶", 50, 105 + j * 15, 20);
break;
}
}
public static void chgTogame(byte abyte0[], HeroSprite herosprite)
throws IOException
{
ByteArrayInputStream bytearrayinputstream = new ByteArrayInputStream(abyte0);
DataInputStream datainputstream = new DataInputStream(bytearrayinputstream);
herosprite.lv = Integer.parseInt(datainputstream.readUTF());
herosprite.itemlv = Integer.parseInt(datainputstream.readUTF());
herosprite.gold = Integer.parseInt(datainputstream.readUTF());
herosprite.MyItem = datainputstream.readUTF();
herosprite.exp = Integer.parseInt(datainputstream.readUTF());
herosprite.at = (herosprite.lv - 1) * 8 + 30;
herosprite.df = (herosprite.lv - 1) * 10 + 20;
System.out.println(herosprite.MyItem);
herosprite.itemcode = herosprite.MyItem.toCharArray();
herosprite.numEmpty = 0;
for (int i = 0; i < herosprite.itemcode.length; i++)
if (herosprite.itemcode[i] == '0')
herosprite.numEmpty++;
}
protected void keyPressed(int i)
{
if (GAME_STATE == 1)
switch (i)
{
default:
break;
case 42: // '*'
if (isOpenItem)
{
isOpenItem = false;
heroSprite.isPause = false;
} else
{
isOpenItem = true;
heroSprite.isPause = true;
}
break;
case 35: // '#'
isGetpress = true;
break;
case 48: // '0'
if (!isOpenItem)
break;
if (isDelpress)
{
isDelpress = false;
} else
{
isDelpress = true;
isChkdel = false;
}
break;
case -21:
case 21: // '\025'
if (isOpenshop)
{
isOpenshop = false;
heroSprite.isPause = false;
}
if (isOpenItem)
{
isOpenItem = false;
heroSprite.isPause = false;
}
break;
}
}
public void run()
{
try
{
rs = RecordStore.openRecordStore(dataname, false);
try
{
heroData = rs.getRecord(1);
chgTogame(heroData, heroSprite);
isData1 = true;
}
catch (Exception exception)
{
System.out.println("没有获得记录" + exception);
}
}
catch (RecordStoreNotFoundException recordstorenotfoundexception)
{
try
{
System.out.println("没找到记录");
rs.closeRecordStore();
rs = null;
isData1 = false;
}
catch (Exception exception9) { }
}
catch (Exception exception1) { }
do
switch (GAME_STATE)
{
case -1:
keyState = getKeyStates();
try
{
Thread.sleep(100L);
}
catch (InterruptedException interruptedexception)
{
interruptedexception.printStackTrace();
}
g.setColor(0);
g.fillRect(0, 0, getWidth(), getHeight());
g.drawImage(menuImage, 30, 0, 20);
if (menudisp == 0)
{
if (keyState == 2 && menuselc > 1)
menuselc--;
if (keyState == 64 && menuselc < 3)
menuselc++;
switch (menuselc)
{
case 1: // '\001'
g.drawImage(barImage, 42, 100, 20);
break;
case 2: // '\002'
g.drawImage(barImage, 42, 120, 20);
break;
case 3: // '\003'
g.drawImage(barImage, 42, 140, 20);
break;
}
}
g.setColor(0xb7b46f);
switch (menudisp)
{
case 0: // '\0'
g.drawString("开始游戏", 65, 100, 20);
g.drawString("游戏说明", 65, 120, 20);
g.drawString("制作小组", 65, 140, 20);
break;
case 1: // '\001'
g.drawString("本版本为非最终确定版,方向键", 15, 100, 20);
g.drawString("控制方向,SELECT键控制动作,", 15, 110, 20);
g.drawString("*键控制基本人物属性框的开关", 15, 120, 20);
g.drawString("#键控制物品拾取,NUM0键控制", 15, 130, 20);
g.drawString("物品的删除,左软键控制窗口的", 15, 140, 20);
g.drawString("关闭", 15, 150, 20);
break;
case 2: // '\002'
g.drawString("单机版程序员:莫紫东", 25, 100, 20);
g.drawString("游 戏 企 划:周琳娟", 25, 110, 20);
g.drawString("美 工:崔永志", 25, 120, 20);
g.drawString(" 莫紫东", 25, 130, 20);
g.drawString("网络版服务端:文 鹏", 25, 140, 20);
g.drawString("网络版客户端:莫紫东", 25, 150, 20);
break;
}
if (keyState == 256)
switch (menuselc)
{
default:
break;
case 1: // '\001'
menuImage = null;
GAME_STATE = 2;
break;
case 2: // '\002'
if (menudisp == 0)
menudisp = 1;
else
menudisp = 0;
break;
case 3: // '\003'
if (menudisp == 0)
menudisp = 2;
else
menudisp = 0;
break;
}
flushGraphics();
break;
case 2: // '\002'
keyState = getKeyStates();
try
{
Thread.sleep(150L);
}
catch (InterruptedException interruptedexception1)
{
interruptedexception1.printStackTrace();
}
g.setColor(0);
g.fillRect(0, 0, getWidth(), getHeight());
g.drawImage(bgImage, -10, -10, 20);
g.setColor(0xffffff);
if (!isBreak)
{
g.drawString("这是一个与世隔绝的国家——桫坨", 10, getHeight() - 2 * jqcount, 20);
g.drawString("罗国。人民过着富足祥合的生活。", 0, (getHeight() + 15) - 2 * jqcount, 20);
g.drawString("直到有一天一匹跛狼缓缓的从荒原", 0, (getHeight() + 30) - 2 * jqcount, 20);
g.drawString("走来,拖着带血的残腿,恐惧的眼", 0, (getHeight() + 45) - 2 * jqcount, 20);
g.drawString("神让它看起来毫无以往的凶猛威风", 0, (getHeight() + 60) - 2 * jqcount, 20);
g.drawString("数天后,兽族的人扯着漫天猩红的", 10, (getHeight() + 75) - 2 * jqcount, 20);
g.drawString("大旗,杀了过来。所过之处,哀鸿", 0, (getHeight() + 90) - 2 * jqcount, 20);
g.drawString("遍野、了无人烟。桫坨罗国的人民", 0, (getHeight() + 105) - 2 * jqcount, 20);
g.drawString("在这一灭顶之灾面前,到底会怎么", 0, (getHeight() + 120) - 2 * jqcount, 20);
g.drawString("反抗?还是在冥冥之中,等待着一", 0, (getHeight() + 135) - 2 * jqcount, 20);
g.drawString("英雄的降临……", 0, (getHeight() + 150) - 2 * jqcount, 20);
}
if (keyState == 256)
isBreak = true;
if (jqcount < 177)
jqcount++;
else
isBreak = true;
if (isBreak)
{
bgImage = null;
GAME_STATE = 0;
}
flushGraphics();
break;
case 0: // '\0'
keyState = getKeyStates();
try
{
Thread.sleep(100L);
}
catch (InterruptedException interruptedexception2)
{
interruptedexception2.printStackTrace();
}
g.setColor(0, 0, 0);
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(255, 255, 255);
g.drawString("请选择要进行的进度:", 20, 20, 20);
if (isCho1)
{
g.drawImage(loadImage, 160, 40, 24);
g.drawImage(loadImage2, 160, 90, 24);
g.setColor(0xffffff);
if (isData1)
g.drawString(String.valueOf(heroSprite.lv), 100, 50, 20);
else
g.drawString("尚未创建进度", 50, 60, 20);
} else
{
g.drawImage(loadImage2, 160, 40, 24);
g.drawImage(loadImage, 160, 90, 24);
g.setColor(0xffffff);
if (isData2)
g.drawString(String.valueOf(heroSprite.lv), 100, 100, 20);
else
g.drawString("尚未创建进度", 50, 115, 20);
}
switch (keyState)
{
default:
break;
case 2: // '\002'
try
{
rs = RecordStore.openRecordStore(dataname, false);
myid = 1;
try
{
heroData = rs.getRecord(1);
chgTogame(heroData, heroSprite);
System.out.println(heroSprite.lv);
isData1 = true;
}
catch (Exception exception2)
{
System.out.println("没有获得记录" + exception2);
}
}
catch (RecordStoreNotFoundException recordstorenotfoundexception1)
{
try
{
System.out.println("没找到记录");
rs.closeRecordStore();
rs = null;
isData1 = false;
}
catch (Exception exception10) { }
}
catch (Exception exception3) { }
isCho1 = true;
break;
case 64: // '@'
try
{
rs = RecordStore.openRecordStore(dataname, false);
myid = 2;
try
{
heroData = rs.getRecord(2);
chgTogame(heroData, heroSprite);
System.out.println(heroSprite.lv);
isData2 = true;
}
catch (Exception exception4)
{
System.out.println("没有获得记录" + exception4);
}
}
catch (RecordStoreNotFoundException recordstorenotfoundexception2)
{
try
{
System.out.println("没找到记录");
rs.closeRecordStore();
rs = null;
isData2 = false;
}
catch (Exception exception11) { }
}
catch (Exception exception5) { }
isCho1 = false;
break;
case 256:
if (isCho1)
{
if (isData1)
{
myid = 1;
GAME_STATE = 1;
break;
}
try
{
rs = RecordStore.openRecordStore(dataname, true);
doHeroInit();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -