function ItemList(){
    
    this.items = new Array();
    this.count = 0;
    
    this.add = function(){
        var name   = arguments[0];
        var id         = arguments[1];
        var desc  = arguments[2];
        var matvar  = arguments[3];
        
        var newitem = new BaseItem(name,id, desc);
        newitem.material_variation = newitem;
        this.items[this.count] = newitem;
        this.count++;
        
        return newitem;
    };
    
    this.getItemById = function(){
        var id = arguments[0];
        id = id.toLowerCase();
        for(var i = 0;i<this.count;i++){
            if(this.items[i].id == id) return this.items[i];
        }
    };
    
    this.getItemByName = function(){
        var name = arguments[0];
        name = name.toLowerCase();
        for(var i = 0;i<this.count;i++){
            if(this.items[i].name == name) return this.items[i];
        }
    };
    
}


function BaseItem(name, id, desc){
    
    this.name = name;
    this.id = id;
    this.desc = desc;
    
    this.material_variation = 0; // 0 - no variation, 1 - has variation
    this.material_map = 0;
    
    this.attributes = new Array();
    this.textures = new Array();
        
    this.addVar = function(){
        var attrib = arguments[0];
        var texture = arguments[1];
        var newindex = this.attributes.length;
        this.attributes[newindex] = attrib;
        this.textures[newindex] = texture;
    };
    
    return this;
}


var gFurnList = new ItemList();
function initFurnList(){
    
    var office1 = gFurnList.add("office_01","office_01","スタンダードデスク");
    with(office1){
    
        material_variation = 0;
        material_map = 0;
        
        addVar("office_01a","default_white.jpg");
        addVar("office_01b","default_white.jpg");
        addVar("office_01c","default_white.jpg");
        addVar("office_01d","default_white.jpg");
        
    }
    
    var office2 = gFurnList.add("office_02","office_02","袖机（ワゴン）");
    with(office2){
    
        material_variation = 1;
        material_map = 1;
        
        addVar("office_02b","default_white.jpg");
        addVar("office_02c","default_white.jpg");
        addVar("office_02d","default_white.jpg");
        addVar("office_02h","default_white.jpg");
        addVar("office_02i","default_white.jpg");
        addVar("office_02j","default_white.jpg");
        addVar("office_02k","default_white.jpg");
        addVar("office_02l","default_white.jpg");
        addVar("office_02m","default_white.jpg");
        addVar("office_02n","default_white.jpg");
        
    }
    
    var office3 = gFurnList.add("office_03","office_03","キャビネット（書庫）");
    with(office3){
    
        material_variation = 1;
        material_map = 2;
        
        addVar("office_03a","default_white.jpg");
        addVar("office_03b","default_white.jpg");
        addVar("office_03c","default_white.jpg");
        addVar("office_03d","default_white.jpg");
        addVar("office_03e","default_white.jpg");
        addVar("office_03f","default_white.jpg");
        addVar("office_03g","default_white.jpg");
        addVar("office_03h","default_white.jpg");
        addVar("office_03i","default_white.jpg");
        addVar("office_03j","default_white.jpg");
        addVar("office_03k","default_white.jpg");
        
    }
    
    var office4 = gFurnList.add("office_04","office_04","デスクトップパネル付きスタンダードデスク");
    with(office4){
    
        material_variation = 1;
        material_map = 3;
        
        addVar("office_04o","default_04.jpg");
        addVar("office_04n","default_04.jpg");
        addVar("office_04m","default_04.jpg");
        
    }
    
    var office5 = gFurnList.add("office_05","office_05","会議用テーブル");
    with(office5){
    
        material_variation = 1;
        material_map = 4;
        
        addVar("office_05c","default_05.jpg");
        addVar("office_05d","default_05.jpg");
        addVar("office_05e","default_05.jpg");
        addVar("office_05f","default_05.jpg");
        
    }
    
    var office6 = gFurnList.add("office_06","office_06","会議用チェア");
    with(office6){
    
        material_variation = 1;
        material_map = 3;
        
        addVar("office_06a","color_01.jpg");
        addVar("office_06b","color_01.jpg");
        addVar("office_06c","color_01.jpg");
        addVar("office_06f","color_01.jpg");
        
    }
    
    var office7 = gFurnList.add("office_07","office_07","パーティション");
    with(office7){
    
        material_variation = 1;
        material_map = 3;
        
        addVar("office_07b","default_07.jpg");
        
    }
    
    var office8 = gFurnList.add("office_08","office_08","ホワイトボード");
    with(office8){
        material_variation = 0;
        material_map = 0;
    }
    
    var office9 = gFurnList.add("furn_oo0005","furn_oo0005","Ornamental Plant");
    with(office9){
        material_variation = 0;
        material_map = 0;
    }
    
    var office10 = gFurnList.add("furn_oc0002","furn_oc0002","スタンダードチェア2");
    with(office10){
        material_variation = 1;
        material_map = 5;
        
        addVar("verk1","color8.jpg");
        addVar("verk2","color8.jpg");
        
    }
    
    var office11 = gFurnList.add("furn_oc0001","furn_oc0001","スタンダードチェア1");
    with(office11){
        material_variation = 1;
        material_map = 6;
        
        addVar("nom_1","color6.jpg");
        addVar("nom_4","color6.jpg");
    }
    
}




