⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configstorage.java

📁 J2ME做的打砖块游戏,是学校的课程项目
💻 JAVA
字号:

import java.io.*;

public class ConfigStorage {
    String name;
    int level;
    int player;
    String wall[];
    int orientation;
    static final int ORIENTATION_LANDSCAPE=0;
    static final int ORIENTATION_PORTRAIT=1;
    double ball_diameter;
    int ball_shape;
    static final int BALL_SHAPE_ROUND=0;
    double ball_initpos_width;
    double ball_initpos_height;
    double ball_initspeed_width;
    double ball_initspeed_height;
    int brick_bounce_type;
    static final int BRICK_BOUND_SIMPLE=0;
    int brick_onhit_score;
    int brick_shape;
    static final int BRICK_SHAPE_RECT=0;
    double brick_width;
    double brick_height;
    double brick_position[][];
    PaddleConfig paddles[];
    String items[];
	public ConfigStorage()
	{
	}
    public void processLine(String input){
        int i;
        int j;
        String line[];
        line=count(input,0,':');
        if(line[0].compareTo("Name")==0) {
            name=line[1];
            String tempname[]=count(line[1],0,' ');
           level=java.lang.Integer.parseInt(tempname[tempname.length-1]);
        } else if(line[0].compareTo("Players")==0) {
            player=java.lang.Integer.parseInt(line[1]);
            paddles=new PaddleConfig[player];
        } else if(line[0].compareTo("Orientation")==0) {
            if(line[1].compareTo("landscape")==0) {
                orientation=ORIENTATION_LANDSCAPE;
            } else if(line[1].compareTo("portrait")==0) {
                orientation=ORIENTATION_PORTRAIT;
            }
        }
        
        else if(line[0].compareTo("Walls")==0) {
            String[]  _wall=count(line[1],0,',');
            wall=new String[_wall.length];
            wall=_wall;
        } else if(line[0].compareTo("Ball")==0) {
            String[]  _ball=count(line[1],0,',');
            for(i=0;i<_ball.length;i++) {
                String _ball_conf[] = count(_ball[i],0,'=');
                items=count(_ball_conf[1],0,'/');
                if(_ball_conf[0].compareTo("shape")==0) {
                    ball_diameter=java.lang.Double.parseDouble(items[1]);
                    
                } else if(_ball_conf[0].compareTo("initpos")==0) {
                    ball_initpos_width=java.lang.Double.parseDouble(items[0]);
                    ball_initpos_height=java.lang.Double.parseDouble(items[1]);
                } else if(_ball_conf[0].compareTo("initspeed")==0) {
                    ball_initspeed_width=java.lang.Double.parseDouble(items[0]);
                    ball_initspeed_height=java.lang.Double.parseDouble(items[1]);
                }
            }
            
        } else if(line[0].compareTo("Brick")==0) {
            String[]  _brick=count(line[1],0,',');
            for(i=0;i<_brick.length;i++) 
            {
                String _brick_conf[] = count(_brick[i],0,'=');
                items=count(_brick_conf[1],0,'/');
                if(_brick_conf[0].compareTo("onhit")==0)
                {
                    brick_onhit_score=java.lang.Integer.parseInt(items[4]);
                }
                else if(_brick_conf[0].compareTo("shape")==0)
                {
                    brick_width=java.lang.Double.parseDouble(items[1]);
                    brick_height=java.lang.Double.parseDouble(items[2]);
                }
                else if(_brick_conf[0].compareTo("positions")==0)
                {
                    brick_position=new double[items.length/2][2];
                    for (i=0;i<items.length;i++)
                    {
                        brick_position[i/2][i%2]=java.lang.Double.parseDouble(items[i]);
                    }
                }
                
            }
            
        }else if(line[0].compareTo("Paddle")==0){
            PaddleConfig onepaddle=new PaddleConfig();
            onepaddle.processPaddle(line[1]);
            int x=onepaddle.id;
            paddles[onepaddle.id-1]=onepaddle;
        }
        
    }
    public void processDoc(String path)
    {
        String text;
        text = readText(path);
        processText(text);
    }
    public void processText(String doc) {
        
        String[] eachline;
        
        eachline=count(doc.trim(),1,'>');
        for(int i=0;i<eachline.length;i++) {
            processLine(eachline[i]);
        }
        for(int x=0;x<wall.length;x++) {
        }
    }
    
    public void printConfig(){
        int i;
        for(i=0;i<wall.length;i++)
        {
        }
        System.out.println(orientation);
        
        for(i=0;i<paddles.length;i++)
        {
        }
        
        for(int x=0;x<brick_position.length;x++)
        {
        }
        
        
        
        
    }
    
  private String readText(String filepath)
  {
    InputStream is = getClass().getResourceAsStream(filepath);
    try 
    {
      StringBuffer sb = new StringBuffer();
      int chr, i = 0;     
      while ((chr = is.read()) != -1)
          sb.append((char) chr);
      return sb.toString();
    }
    catch (Exception e)
    {         
    }
    return null;
  }
  
      
    static public String[] count(String string1,  int num,char divider) {
        
        String text = string1.substring(num);
        text=text.trim();
        int count = 0;
        char separator = divider;
        int index = 0;
        
        do
        {
            ++count;
            ++index;
            index = text.indexOf(separator, index);
        }
        while (index != -1);
        
        String[] subStr = new String[count];
        index = 0;
        int endIndex = 0;
        
        for(int i = 0; i < count; i++) {
            endIndex = text.indexOf(separator,index);
            if(endIndex == -1) {
                subStr[i] = text.substring(index);
            } else {
                subStr[i] = text.substring(index, endIndex);
                index = endIndex + 1;
            }
        }
     
        
        
        return subStr;
        
    }
    
}







⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -