Newer
Older
HelloAndroid / RiverCrossingAI / src / sample / game / model / NumBox.java
package sample.game.model;

import java.util.ArrayList;

import library.core.model.CoreModel;
import library.core.system.CoreImageData;

public class NumBox extends CoreModel{


	private ArrayList<CoreModel> rightNumModel;	//0~9
	private ArrayList<CoreModel> leftNumModel;

	private int num;

	public NumBox(int num,ArrayList<CoreModel> leftNum,ArrayList<CoreModel> rightNum,CoreImageData imageData, float centerX, float centerY,
			float width, float height) {
		super(imageData, centerX, centerY, width, height);

		this.num=num;

		this.rightNumModel=rightNum;
		this.leftNumModel=leftNum;

		this.setNmber(num);


	}


	public void setNmber(int num){

		if(num>99) num=99;

		int one=0;
		int ten=0;

		if(num==0){
			one=0;
			ten=0;
		}else{
			one=num%10;
			ten=(num-one)/10;
		}


		//1の位の表示
		for(int i=0;i<rightNumModel.size();i++){
			if(i==one){
				rightNumModel.get(i).setShowView(true);
			}else{
				rightNumModel.get(i).setShowView(false);
			}
		}

		//10の位の表示
		for(int i=0;i<leftNumModel.size();i++){
			if(i==ten){
				leftNumModel.get(i).setShowView(true);
			}else{
				leftNumModel.get(i).setShowView(false);
			}
		}

	}

	@Override
	public void setCenterX(float x){
		super.setCenterX(x);

		//付属部品も一緒に移動させる
		for(int i=0;i<rightNumModel.size();i++){
			rightNumModel.get(i).setCenterX(x+6);
		}

		for(int i=0;i<leftNumModel.size();i++){
			leftNumModel.get(i).setCenterX(x-46);
		}

	}

	@Override
	public void setXY(float x,float y){
		super.setXY(x, y);

		//付属部品も一緒に移動させる
		for(int i=0;i<rightNumModel.size();i++){
			rightNumModel.get(i).setXY(x+6, y+22);
		}

		for(int i=0;i<leftNumModel.size();i++){
			leftNumModel.get(i).setXY(x-46, y+22);
		}

	}


	@Override
	public void setShowView(boolean b){
		super.setShowView(b);

		if(!b){	//表示を消す場合はすべて消す
			for(int i=0;i<rightNumModel.size();i++){
				rightNumModel.get(i).setShowView(false);
			}

			for(int i=0;i<leftNumModel.size();i++){
				leftNumModel.get(i).setShowView(false);
			}
		}

	}

}