コード例 #1
0
ファイル: EnemyM000.cs プロジェクト: adahera222/MSSTGameProj
    void SetSubCannonAttack(string cannonName, MZMode mode)
    {
        MZControlUpdate<MZPartControl> partControlUpdate = mode.AddPartControlUpdater();
        MZPartControl partControl = new MZPartControl( partsByNameDictionary[ cannonName ] );
        partControlUpdate.Add( partControl );

        MZAttack_Idle show = partControl.AddAttack<MZAttack_Idle>();
        show.duration = 1.0f;
        show.isRunOnce = true;

        MZAttack_Idle wait1 = partControl.AddAttack<MZAttack_Idle>();
        wait1.duration = 2.0f;

        MZAttack_OddWay attack = partControl.AddAttack<MZAttack_OddWay>();
        attack.numberOfWays = 1;
        attack.bulletName = "EBDonuts";
        attack.initVelocity = 250;
        attack.targetHelp = new MZTargetHelp_Target();
        attack.targetHelp.calcuteEveryTime = true;
        attack.colddown = 0.05f;
        attack.additionalVelocity = 50;
        attack.duration = 0.5f;

        MZAttack_Idle wait2 = partControl.AddAttack<MZAttack_Idle>();
        wait2.duration = 2.5f;
    }
コード例 #2
0
ファイル: EnemyM000.cs プロジェクト: adahera222/MSSTGameProj
    void SetMainBodyAttack(MZMode mode)
    {
        MZControlUpdate<MZPartControl> partControlUpdate = mode.AddPartControlUpdater();
        MZPartControl partControl = new MZPartControl( partsByNameDictionary[ "MainBody" ] );
        partControlUpdate.Add( partControl );

        MZAttack_Idle show = partControl.AddAttack<MZAttack_Idle>();
        show.duration = 1.0f;
        show.isRunOnce = true;

        MZAttack_OddWay nWay = partControl.AddAttack<MZAttack_OddWay>();
        nWay.bulletName = "EBBee";
        nWay.numberOfWays = 7;
        nWay.colddown = 0.25f;
        nWay.intervalDegrees = 10;
        nWay.initVelocity = 400;
        nWay.duration = 1.0f;
        nWay.additionalWaysPerLaunch = -2;
        nWay.targetHelp = new MZTargetHelp_Target();
        nWay.targetHelp.calcuteEveryTime = false;

        nWay.offsetPositionsList.Add( new Vector2( 0, 0 ) );
        for( int i = 0; i < nWay.numberOfWays; i++ )
        {
            nWay.offsetPositionsList.Add( new Vector2( -40*i, 0 ) );
            nWay.offsetPositionsList.Add( new Vector2( 40*i, 0 ) );
        }

        MZAttack_Idle cd = partControl.AddAttack<MZAttack_Idle>();
        cd.duration = 4.0f;
    }
コード例 #3
0
ファイル: EnemyS000.cs プロジェクト: adahera222/MSSTGameProj
 void AddMove_Rotation(MZMode mode)
 {
     MZMove_Rotation move = mode.AddMove<MZMove_Rotation>( "move" );
     move.angularVelocity = -100;
     move.variationOfRadians = -10;
     move.radiansLimited = 100;
     move.targetHelp.assignPosition = new Vector2( 0, 0 );
 }
コード例 #4
0
    MZMove AddCommonMove(MZMode mode, string name)
    {
        MZMove_LinearBy linearTo = mode.AddMove<MZMove_LinearBy>( name );
        linearTo.velocity = 100;
        linearTo.direction = 270;

        return linearTo;
    }
コード例 #5
0
ファイル: MZEnemy.cs プロジェクト: adahera222/MSSTGameProj
    public MZMode AddMode(string name)
    {
        MZMode mode = new MZMode();
        mode.name = name;
        mode.controlDelegate = this;

        modesList.Add( mode );

        return mode;
    }
コード例 #6
0
ファイル: EnemyS000.cs プロジェクト: adahera222/MSSTGameProj
    void AddOddWayAttack(MZCharacterPart part, MZMode mode)
    {
        MZPartControl partControl = new MZPartControl( part );
        MZControlUpdate<MZPartControl> partControlUpdate = mode.AddPartControlUpdater();
        partControlUpdate.Add( partControl );

        MZAttack_OddWay attack = partControl.AddAttack<MZAttack_OddWay>();
        attack.numberOfWays = 1;
        attack.colddown = 0.3f;
        attack.duration = 0.1f;
        attack.initVelocity = 500;
        attack.bulletName = "EBDonuts";
        attack.targetHelp = new MZTargetHelp_Target();

        MZAttack_Idle idle = partControl.AddAttack<MZAttack_Idle>();
        idle.duration = 3;
    }
コード例 #7
0
ファイル: EnemyL000.cs プロジェクト: adahera222/MSSTGameProj
    void SetMainAttack(string partName, MZMode mode)
    {
        MZControlUpdate<MZPartControl> partControlUpdate = mode.AddPartControlUpdater();
        MZPartControl partControl = new MZPartControl( partsByNameDictionary[ partName ] );
        partControlUpdate.Add( partControl );

        MZAttack_Idle show = partControl.AddAttack<MZAttack_Idle>();
        show.duration = 1.0f;
        show.isRunOnce = true;

        MZAttack_OddWay nWay = partControl.AddAttack<MZAttack_OddWay>();
        nWay.bulletName = "EBBee";
        nWay.numberOfWays = 7;
        nWay.colddown = 0.25f;
        nWay.intervalDegrees = 10;
        nWay.initVelocity = 400;
        nWay.duration = 1.0f;
        nWay.additionalWaysPerLaunch = -2;
        nWay.targetHelp = new MZTargetHelp_Target();

        MZAttack_Idle cd = partControl.AddAttack<MZAttack_Idle>();
        cd.duration = 4.0f;
    }
コード例 #8
0
 void AddSplitMoveToSubEmemy(MZMode mode)
 {
     MZMove_LinearTo splitMove = mode.AddMove<MZMove_LinearTo>( "s" );
     float moveDegrees = ( 360/8 )*currentEnemyCreatedCount;
     float movement = 200;
     splitMove.useRelativePosition = true;
     splitMove.destinationPosition = MZMath.UnitVectorFromDegrees( moveDegrees )*movement;
     splitMove.totalTime = _splitTime - 0.1f;
     splitMove.duration = _splitTime;
 }
コード例 #9
0
    void SetType3Move(MZMode mode, MZEnemy enemy)
    {
        MZMove_Rotation rotShow = mode.AddMove<MZMove_Rotation>( "r" );
        rotShow.angularVelocity = 50*_angularVelocityDirection;
        rotShow.variationOfRadians = -300;
        rotShow.radiansLimited = 400;
        rotShow.targetHelp.assignPosition = Vector2.zero;
        rotShow.duration = 1.5f;

        MZMove_Idle moveIdle = mode.AddMove<MZMove_Idle>( "i" );
        moveIdle.duration = 5;

        MZMove_LinearTo moveOut = mode.AddMove<MZMove_LinearTo>( "l" );
        moveOut.destinationPosition = Vector2.zero;
        moveOut.totalTime = 0.5f;
        moveOut.notEndAtDestation = true;
    }
コード例 #10
0
 void SetType2Move(MZMode mode, MZEnemy enemy)
 {
     MZMove_Rotation rotShow = mode.AddMove<MZMove_Rotation>( "r" );
     rotShow.angularVelocity = 50*_angularVelocityDirection;
     rotShow.variationOfRadians = -100;
     rotShow.targetHelp.assignPosition = Vector2.zero;
     rotShow.duration = 20;
 }
コード例 #11
0
    void SetType1Move(MZMode mode, MZEnemy enemy)
    {
        MZMove_LinearBy show = mode.AddMove<MZMove_LinearBy>( "l" );
        show.direction = MZMath.DegreesFromXAxisToVector( MZMath.UnitVectorFromP1ToP2( enemy.position, Vector2.zero ) );
        show.duration = 0.6f;
        show.velocity = 500;

        MZMove_Rotation rotShow = mode.AddMove< MZMove_Rotation>( "r1" );
        rotShow.angularVelocity = 50*_angularVelocityDirection;
        rotShow.variationOfRadians = -300;
        rotShow.radiansLimited = 400;
        rotShow.targetHelp.assignPosition = Vector2.zero;
        rotShow.duration = 10.0f;

        MZMove_Rotation rotOut = mode.AddMove< MZMove_Rotation>( "r2" );
        rotOut.angularVelocity = 50*_angularVelocityDirection;
        rotOut.variationOfRadians = 300;
        rotOut.targetHelp.assignPosition = Vector2.zero;
        rotOut.duration = 10;
    }
コード例 #12
0
 void SetNewPartToMultiVortexAttack(MZMode mode, MZEnemy enemy, float degrees)
 {
     MZPartControl partControl = new MZPartControl( enemy.partsByNameDictionary[ "MainBody" ] );
     mode.AddPartControlUpdater().Add( partControl );
     AddMultiVortex( partControl, degrees );
 }
コード例 #13
0
    void SetMove(MZMode mode)
    {
        MZMove_LinearTo to = mode.AddMove<MZMove_LinearTo>( "move" );
        to.destinationPosition = new Vector2( 0, MZGameSetting.ENEMY_BOUNDLE_TOP/3*2 + 40 );
        to.totalTime = 4.0f;
        to.isRunOnce = true;
        to.duration = 12;

        MZMove_LinearTo left = mode.AddMove<MZMove_LinearTo>( "left" );
        left.destinationPosition = new Vector2( 0, MZGameSetting.ENEMY_BOUNDLE_TOP + 300 );
        left.totalTime = 10.0f;
    }
コード例 #14
0
    void AddCrossWayAttack(MZCharacterPart part, MZMode mode, float degree, int way)
    {
        MZPartControl partControl = new MZPartControl( part );
        mode.AddPartControlUpdater().Add( partControl );

        float rankIdle = ( ( rank < 3 )? 0.5f : 0 );

        MZAttack_OddWay odd = partControl.AddAttack<MZAttack_OddWay>();
        odd.numberOfWays = way;
        odd.colddown = 0.1f;
        odd.duration = 1.0f - rankIdle + ( ( rank >= 7 )? -0.6f : 0 );
        odd.bulletName = "EBDonuts";
        odd.initVelocity = 300;
        odd.additionalVelocity = 80;
        odd.targetHelp = MZTargetHelp.Create<MZTargetHelp_AssignDirection>();
        ( odd.targetHelp as MZTargetHelp_AssignDirection ).direction = degree;
        float interval = 50;
        odd.offsetPositionsList.Add( new Vector2( 0, -interval ) );
        odd.offsetPositionsList.Add( new Vector2( -interval, 0 ) );
        odd.offsetPositionsList.Add( new Vector2( interval, 0 ) );

        MZAttack_Idle idle = partControl.AddAttack<MZAttack_Idle>();
        idle.duration = 0.6f + rankIdle;
    }
コード例 #15
0
ファイル: EnemyS000.cs プロジェクト: adahera222/MSSTGameProj
 void AddMove_ToTarget(MZMode mode)
 {
     MZMove_ToTarget move = mode.AddMove<MZMove_ToTarget>( "move" );
     move.velocity = 300;
 }
コード例 #16
0
ファイル: EnemyS000.cs プロジェクト: adahera222/MSSTGameProj
 //
 void AddMove_Linear(MZMode mode)
 {
     MZMove_LinearBy move = mode.AddMove< MZMove_LinearBy>( "move" );
     move.direction = ( position.x > 0 )? 225 : ( position.x < 0 )? 315 : 270;
     move.velocity = 100;
 }