📄 gamecanvas.java
字号:
else if(MyMap_collides[prow+1][pcol]==5||MyMap_collides[prow][pcol]==5){
g.drawString(medicine[checkPoint][i],78,61+i*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(medicinePrice[checkPoint][i],157,61+i*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(medicineNum[checkPoint][i],202,61+i*20,Graphics.TOP|Graphics.HCENTER);
}
}
}
else if(viewState==1){
g.setClip(15,60,211,189);
for(int i=0;i<v.size();i++){
String[] data = (String[])v.elementAt(i);
if(change==1){
if(select1==i-dy)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
}
g.drawString(data[0],78,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(data[1],157,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(data[2],202,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
}
for(int i=0;i<v1.size();i++){
String[] data = (String[])v1.elementAt(i);
if(change==1){
if(select1==i+v.size()-dy)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
}
g.drawString(data[0],78,61+(i+v.size()-dy)*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(data[1],157,61+(i+v.size()-dy)*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(data[2],202,61+(i+v.size()-dy)*20,Graphics.TOP|Graphics.HCENTER);
}
}
if(viewState==0)
length = 4;
else
length = v.size()+v1.size();
for(int n=0;n<length;n++){
if(add==true)
if(change==1){
if(select1==n-dy){
g.setColor(0xff0000);
}
else
g.setColor(0x0bb53f);
}
else{}
else
g.setColor(0x0bb53f);
g.fillTriangle(220,70+(n-dy)*20,212,67+(n-dy)*20,212,73+(n-dy)*20);
if(subtract==true)
if(change==1){
if(select1==n-dy){
g.setColor(0xff0000);
}
else
g.setColor(0x0bb53f);
}
else{}
else
g.setColor(0x0bb53f);
g.fillTriangle(185,70+(n-dy)*20,193,67+(n-dy)*20,193,73+(n-dy)*20);
}
if(change==0){
g.setColor(0xff0000);
g.drawRect(15+select*55,15,50,20);
}
else if(change==1){
g.setColor(0xff0000);
g.drawRect(15,60+select1*20,210,20);
}
else if(change==2){
g.setColor(0xff0000);
g.drawRect(65+select*55,254,50,20);
}
}
/***************绘制购买药材对话框(同上)***************/
private final String[][] medicine = {
{"红果(血加20)", "紫丹(血加50)", "黄芪(气加30)", "白术(气加50)"},
{"果肉冻(血加30)", "桂圆肉(血加50)", "白术(气加50)", "龙眼酒(气加80)"},
{"大紫丹(血加80)", "黑豆(血加120)", "补酒(气加60)", "人参(气加120)"},
{"赤豆(血加150)", "红枣(血加200)", "鹿茸(气加100)", "沙参(气加150)"},
{"桑莲子(血加180)","黑木耳(血加210)","茯苓膏(气加120)","蚕蛹(气加180)"},
{"无花果(血加200)","黑芝麻(血加250)","天麻(气加150)", "蜂蜜(气加220)"},
{"紫百合(血加300)","燕窝(血加400)", "冬虫夏草(气加250)","灵芝(气加400)"},
};
private final String[][] medicineValue = {
{"20", "50", "30", "50"},
{"30", "50", "50", "80"},
{"80", "120","60", "120"},
{"150","200","100","150"},
{"180","210","120","180"},
{"200","250","150","220"},
{"300","400","250","400"}
};
private final String[][] medicinePrice = {
{"30", "50", "30", "50"},
{"50", "80", "70", "100"},
{"100","150","80", "150"},
{"180","220","130","200"},
{"200","240","160","250"},
{"220","280","200","320"},
{"300","450","360","450"}
};
private String[][] medicineNum = {
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"}
};
private String[][] medicineSaveNum = {
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"},
{"0","0","0","0"}
};
/***************绘制人物信息功能查看框***************/
String[] info = {
"状态","装备","道具","系统","装备","使用","撤消","返回","存储","读取","删除","取消","确定"
};
String[] equipment = {"","","",""}; //装备的道具
private int time;
private int[] id = new int[4]; //存储编号
int showLevel,showPlace,showPoint;
private void drawFunction(Graphics g){
g.setColor(0x000000);
g.fillRect(10,10,220,269);
g.setColor(0x505155);
g.fillRect(12,12,216,265);
g.setColor(0x0bb53f);
for(int i=0;i<2;i++){
for(int j=0;j<4;j++){
g.drawRect(14+j*54,15+i*239,50,20);
}
}
g.drawRect(15,40,210,209);
g.setFont(font1);
g.setColor(0xffff00);
for(int i=0;i<4;i++){
if(change==0){
if(select==i)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
}
g.drawString(info[i],39+i*54,16,Graphics.TOP|Graphics.HCENTER);
}
g.setColor(0xffff00);
for(int i=0;i<4;i++){
if(change==2){
if(select==i)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
}
g.drawString(info[i+4],39+i*54,255,Graphics.TOP|Graphics.HCENTER);
}
if(viewState==0){
g.setColor(0xffff00);
g.setFont(font);
g.drawString("等级 "+pLevel,22,45,20);
g.drawString("经验 "+currentExpValue+"/"+maxExpValue,22,65,20);
g.drawString("生命 "+current_pLifeValue+"/"+max_pLifeValue,128,45,20);
g.drawString("气功 "+current_pPower+"/"+max_pPower,128,65,20);
g.drawString("武器 "+equipment[3],22,100,20);
g.drawString("防具 "+equipment[1],22,120,20);
g.drawString("披风 "+equipment[0],22,140,20);
g.drawString("鞋子 "+equipment[2],22,160,20);
g.drawString("攻击 "+pAttack,150,100,20);
g.drawString("防御 "+pDefense,150,120,20);
g.drawString("命中 "+pHit,150,140,20);
g.drawString("闪避 "+pFends,150,160,20);
g.drawString("正义值 "+pJust,22,195,20);
g.drawString("金钱 "+pMoney,128,195,20);
}
else if(viewState==1||viewState==2){
g.setColor(0x0bb53f);
g.drawLine(15,60,225,60);
g.drawLine(157,40,157,249);
g.setColor(0xffff00);
g.drawString(str[2],86,41,Graphics.TOP|Graphics.HCENTER);
g.drawString(str[4],190,41,Graphics.TOP|Graphics.HCENTER);
if(viewState==1){
g.setClip(15,60,211,189);
for(int i=0;i<v.size();i++){
String[] data = (String[])v.elementAt(i);
if(selected==false){
if(change==1){
if(select1==i-dy)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
}
}
else if(selected==true){
g.setColor(0xff0000);
g.drawRect(15,60+select1*20,210,20);
g.setColor(0xffff00);
}
g.drawString(data[0],86,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(data[3],190,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
}
}
else if(viewState==2){
g.setClip(15,60,211,189);
for(int i=0;i<v1.size();i++){
String[] data = (String[])v1.elementAt(i);
if(selected==false){
if(change==1){
if(select1==i-dy)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
}
}
else{
g.setColor(0xff0000);
g.drawRect(15,60+select1*20,210,20);
g.setColor(0xffff00);
}
g.drawString(data[0],86,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
g.drawString(data[3],190,61+(i-dy)*20,Graphics.TOP|Graphics.HCENTER);
}
}
}
else if(viewState==3){
g.setColor(0x494949);
for(int i=0;i<4;i++){
g.fillRect(25,45+i*51,190,48);
}
g.setColor(0xffff00);
g.setFont(font);
try{
rs = RecordStore.openRecordStore("tianmoshanGame",true);
for(int i=0;i<rs.getNumRecords();i++){
if(rs.getRecord(i+1)!=null){
byte[] record = rs.getRecord(i+1);
ByteArrayInputStream bais = new ByteArrayInputStream(record);
DataInputStream dis = new DataInputStream(bais);
showLevel = dis.readInt();
showPlace = dis.readInt();
id[i] = dis.readInt();
showPoint = dis.readInt();
g.drawString("姓名: 干将",35,55+i*51,20);
g.drawString("等级: "+showLevel,130,55+i*51,20);
g.drawString("地点: "+place[showPoint][showPlace-1],35,75+i*51,20);
g.drawString("存储次数: "+id[i],130,75+i*51,20);
}
}
rs.closeRecordStore();
}catch(Exception e){
e.printStackTrace();
}
}
if(change==0){
g.setColor(0xff0000);
g.drawRect(14+select*54,15,50,20);
}
else if(change==1){
if(viewState==3){
g.setColor(0xff0000);
g.drawRect(25,45+select1*51,190,48);
}
else{
g.setColor(0xff0000);
g.drawRect(15,60+select1*20,210,20);
}
}
else if(change==2){
g.setColor(0xff0000);
g.drawRect(14+select*54,254,50,20);
}
if(recordOpen==true){
g.setColor(0x000000);
g.fillRect(w/2-80,h/2-40,160,80);
g.setColor(0x494949);
g.fillRect(w/2-77,h/2-37,154,74);
switch(recordState){
case 1:
g.setColor(0xffff00);
g.setFont(font1);
g.drawString("是否覆盖当前进度?",w/2,h/2-30,Graphics.TOP|Graphics.HCENTER);
g.setColor(0x0bb53f);
for(int i=0;i<2;i++){
if(select3==i)
g.setColor(0xff0000);
else
g.setColor(0x0bb53f);
g.drawRect(w/2-65+i*80,h/2+10,50,20);
}
for(int i=0;i<2;i++){
if(select3==i)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
g.drawString(info[12-i],w/2-40+i*80,h/2+11,Graphics.TOP|Graphics.HCENTER);
}
break;
case 2:
g.setColor(0xffff00);
g.setFont(font1);
g.drawString("是否读取当前进度?",w/2,h/2-30,Graphics.TOP|Graphics.HCENTER);
g.setColor(0x0bb53f);
for(int i=0;i<2;i++){
if(select3==i)
g.setColor(0xff0000);
else
g.setColor(0x0bb53f);
g.drawRect(w/2-65+i*80,h/2+10,50,20);
}
for(int i=0;i<2;i++){
if(select3==i)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
g.drawString(info[12-i],w/2-40+i*80,h/2+11,Graphics.TOP|Graphics.HCENTER);
}
break;
case 3:
g.setColor(0xffff00);
g.setFont(font1);
g.drawString("当前无可读取记录",w/2,h/2-9,Graphics.TOP|Graphics.HCENTER);
break;
case 4:
g.setColor(0xffff00);
g.setFont(font1);
g.drawString("是否删除当前进度?",w/2,h/2-30,Graphics.TOP|Graphics.HCENTER);
g.setColor(0x0bb53f);
for(int i=0;i<2;i++){
if(select3==i)
g.setColor(0xff0000);
else
g.setColor(0x0bb53f);
g.drawRect(w/2-65+i*80,h/2+10,50,20);
}
for(int i=0;i<2;i++){
if(select3==i)
g.setColor(0xff0000);
else
g.setColor(0xffff00);
g.drawString(info[12-i],w/2-40+i*80,h/2+11,Graphics.TOP|Graphics.HCENTER);
}
break;
case 5:
g.setColor(0xffff00);
g.setFont(font1);
g.drawString("当前无可删除记录",w/2,h/2-9,Graphics.TOP|Graphics.HCENTER);
}
}
if(stateRunnable==true){
if(selected==false){
g.setColor(0x000000);
g.fillRect(w/2-48,h/2-18,96,36);
g.setColor(0x494949);
g.fillRect(w/2-45,h/2-15,90,30);
g.setColor(0xffff00);
g.setFont(font1);
if(change==2){
if(select==0){
if(viewState==0||viewState==2||viewState==3){
g.drawString("不 能 装 备",w/2,h/2-9,Graphics.TOP|Graphics.HCENTER);
}
else if(viewState==1){
if(v.size()==0){
g.drawString("无可用装备",w/2,h/2-9,Graphics.TOP|Graphics.HCENTER);
}
else{
g.drawString("请选择装备",w/2,h/2-9,Graphics.TOP|Graphics.HCENTER);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -