view webGL/dandy/resources/parse.js @ 9:1d76f5717ba7

upload dandy4.html
author NOBUYASU Oshiro
date Sat, 10 Jul 2010 16:38:10 +0900
parents 03b67cd2bde7
children 680b5b0cd1e4
line wrap: on
line source

function parseXml(gl)
{

    loadCharaXml(gl, "./xml/character.xml");//gl.charaにxmlファイルの中身を入れる
    loadEffectXml(gl, "./xml/effect.xml");//gl.effectにxmlファイルの中身をいれる
    loadBossXml(gl, "./xml/boss.xml");//gl.bossにxmlファイルの中身を入れる

    jiki = new makePlayer(gl.chara);//自機の情報をいれておくクラス、グローバル
    
    enemy = [];//敵の情報を入れておく配列を用意、グローバル
    pushEnemy(gl,enemy);//配列enemy[]に敵をpush

    boss = [];//bossの情報を入れておく配列を用意,グローバル
    pushBoss(gl, boss);//配列boss[]にbossの情報をpush

    bullets = [];//弾の情報を入れておく配列を用意、グローバル
    pushPlayerBullets(gl,bullets);//配列bullets[]に弾をpush

    bom = [];//撃破時の爆発の情報をいれておく配列を用意。グローバル
    pushBom(gl, bom);//配列 bom[]に爆発をpush
}

function loadCharaXml(gl,url)
{
    if(gl.chara == undefined) gl.chara = new Object();
    var xmlChara = new Object();
    xmlChara = parsePanel(url);
    for (var name in xmlChara)
	{
            gl.chara[name] = makeXmlObj(gl, xmlChara[name]);
            gl.chara[name].texture = loadImageTexture(gl, xmlChara[name].image);
	}
}

function loadEffectXml(gl,url)
{
    if(gl.effect == undefined)gl.effect = new Object();
    var xmlChara = new Object();
    xmlChara = parsePanel(url);
    for (var name in xmlChara)
        {
            gl.effect[name] = makeXmlObj(gl, xmlChara[name]);
            gl.effect[name].texture = loadImageTexture(gl, xmlChara[name].image);
        }
}

function loadBossXml(gl,url)
{
    if(gl.boss == undefined)gl.boss = new Object();
    var xmlChara = new Object();
    xmlChara = parsePanel(url);
    for (var name in xmlChara)
        {
            gl.boss[name] = makeXmlObj(gl, xmlChara[name]);
            gl.boss[name].texture = loadImageTexture(gl, xmlChara[name].image);
        }
}

function pushBoss(gl, boss)
{
    for(var name in gl.boss)
        {
            boss.push(gl.boss[name]);
        }
}


function pushEnemy(gl, enemy)
{
    enemy.push(gl.chara["enemy_greenclab"]);
    enemy.push(gl.chara["missile"]);
    enemy.push(gl.chara["gunbattery"]);
    enemy.push(gl.chara["meteo"]);
}



function pushPlayerBullets(gl,bullets)
{
    //    if(bullets == undefined) var bullets = [];
    bullets.push(gl.effect["bluebarrier"]);
    bullets.push(gl.effect["bulebullet_left"]);
    bullets.push(gl.effect["bulebullet_right"]);
    bullets.push(gl.effect["redbullet"]);
    bullets.push(gl.effect["greenbullet"]);
    bullets.push(gl.effect["lonlaser"]);
    //    return bullets;
}

function pushBom(gl, bom)
{
    bom.push(gl.effect["redbomb_anim_1"]);
    bom.push(gl.effect["redbomb_anim_2"]);
    bom.push(gl.effect["redbomb_anim_3"]);
    bom.push(gl.effect["redbomb_anim_4"]);
    bom.push(gl.effect["redbomb_anim_5"]);
    bom.push(gl.effect["redbomb_anim_6"]);
    bom.push(gl.effect["redbomb_anim_7"]);

}