Beispiel #1
0
        public Bullet(Vector2 pos)
        {
            sprite = new SpriteUV();

            if (texInfo == null)
            {
                texInfo = new TextureInfo ("/Application/assets/bubble.png");
                //texInfo = new TextureInfo(AssetManager.GetTexture("bubble"), new Vector2i(4,1),TRS.Quad0_1);
            }

            if (spriteList == null)
            {
                spriteList = new SpriteList(texInfo);
                spriteList.Position = new Vector2(0.0f,0.0f);
            }

            spriteList.AddChild(sprite);
            sprite.Quad.S = texInfo.TextureSizef; // map 1:1 on screen -- necessary? !!!\
            sprite.RunAction(new ScaleTo(new Vector2(0.15f,0.15f),0.0f));

            sprite.GetContentWorldBounds(ref boundingBox);
            boundingBox = new Bounds2(pos, new Vector2(38,38));
            //sprite.CenterSprite();
            sprite.Position = pos;
            sprite.Schedule((dt) => Update());
        }
Beispiel #2
0
 /// <summary>
 /// スプライトを見えなくし、一定時間後元に戻すエフェクト
 /// </summary>
 /// <param name='sprite'>
 /// Sprite.
 /// </param>
 public static void Disappear(SpriteUV sprite)
 {
     Global.characterActive = false;
     var seq = new Sequence();
     seq.Add(new CallFunc(()=>Disappear1(sprite)));
     seq.Add(new CallFunc(()=>{sprite.Visible = false;}));
     seq.Add(new MoveBy(new Vector2(0,0),2));
     seq.Add(new CallFunc(()=>Appear(sprite)));
     sprite.RunAction(seq);
 }
Beispiel #3
0
 private static void Disappear1(SpriteUV sprite)
 {
     sprite.RunAction(new RotateBy(Vector2.Rotation(FMath.DegToRad * 180.0f),0.3f));
     //sprite.RunAction(new SkewTo(new Vector2(1,1),1));
     sprite.RunAction(new ScaleTo(new Vector2(0.1f,0.1f),2));
     Sounds.PlayHidan();
 }
Beispiel #4
0
 private static void Appear(SpriteUV sprite)
 {
     sprite.RunAction(new RotateTo(new Vector2(1,0),0));
     sprite.RunAction(new ScaleTo(new Vector2(0.8f,0.8f),0));
     sprite.Visible = true;
     Global.characterActive = true;
 }
Beispiel #5
-1
        /// <summary>
        /// スキル使用時エフェクト
        /// </summary>
        /// <param name='mySpritePosition'>
        /// 自機スプライトの位置
        /// </param>
        public static void SkillUseEffect(Vector2 mySpritePosition)
        {
            var image1 = new Image("/Application/resourses/Bullet01_64x64.png");
            image1 = image1.Crop(new ImageRect(0,0,64,64));
            var image2 = new Image("/Application/resourses/effect1.png");
            image2 = image2.Resize(new ImageSize(960,180));

            var waveTexture = Convert.CreateTextureFromImage(image1);
            image2.Decode();
            var bgTexture = Convert.CreateTextureFromImage(image2);

            image1.Dispose();
            image2.Dispose();

            var skillName = "";
            switch(Global.setSkill){
            case SkillID.Default :
                skillName = "The WORLD";
                break;
            case SkillID.Skill1 :
                skillName = "Refrection";
                break;
            case SkillID.Skill2 :
                skillName = "";
                break;
            case SkillID.Skill3 :
                skillName = "";
                break;
            }
            var textTexture = Convert.CreateTextureFromText(skillName,new Font(FontAlias.System,120,FontStyle.Bold | FontStyle.Italic),0xFFFFFF00) ;

            waveTextureInfo = new TextureInfo(waveTexture);
            textTextureInfo = new TextureInfo(textTexture);
            bgTextureInfo = new TextureInfo(bgTexture);

            waveSprite = new SpriteUV(){TextureInfo = waveTextureInfo};
            textSprite = new SpriteUV(){TextureInfo = textTextureInfo};
            bgSprite = new SpriteUV(){TextureInfo = bgTextureInfo};

            waveSprite.Quad.S = waveTextureInfo.TextureSizef;
            textSprite.Quad.S = textTextureInfo.TextureSizef;
            bgSprite.Quad.S = bgTextureInfo.TextureSizef;

            waveSprite.CenterSprite();
            textSprite.CenterSprite();
            bgSprite.CenterSprite();

            waveSprite.Position = mySpritePosition;
            textSprite.Position = new Vector2(1500,272);
            bgSprite.Position = new Vector2(1500,272);

            Scenes.sceneOnGame.AddChild(waveSprite);
            Scenes.sceneOnGame.AddChild(bgSprite);
            Scenes.sceneOnGame.AddChild(textSprite);

            var seq0 = new Sequence();
            seq0.Add(new MoveTo(new Vector2(480,272),1));
            seq0.Add(new DelayTime(1.0f));
            seq0.Add(new MoveTo(new Vector2(-500,272),1));

            var seq1 = new Sequence();
            seq1.Add(new MoveTo(new Vector2(480,272),1));
            seq1.Add(new DelayTime(1.0f));
            seq1.Add(new MoveTo(new Vector2(-500,272),1));

            var seq2 = new Sequence();
            seq2.Add(new DelayTime(3.5f));
            seq2.Add(new CallFunc(()=>{Sounds.PlaySkill2();}));
            seq2.Add(new ScaleTo(new Vector2(40,40),3));

            Sounds.PlaySkill1();
            bgSprite.RunAction(seq0);
            textSprite.RunAction(seq1);
            waveSprite.RunAction(seq2);
        }