Example #1
0
    public static TankEvent CreateNewEvent(int triggerNodeIdx, float triggerTngOffset,
                                           int startNodeIdx, float startTngOffset, float startBinrmOffset)
    {
        PathManager path = LevelController.Instance._path;

        if (path == null)
        {
            throw new UnityException("Cannot find path");
        }
        GameObject obj = new GameObject();

        obj.name = "TankEvent";

        TankEvent tankEvent = obj.AddComponent <TankEvent>();

        tankEvent._triggerNodeIdx   = triggerNodeIdx;
        tankEvent._triggerTngOffset = triggerTngOffset;
        tankEvent._startNodeIdx     = startNodeIdx;
        tankEvent._startTngOffset   = startTngOffset;
        tankEvent._startBinrmOffset = startBinrmOffset;

        obj.transform.position = Bezier.GetPoint3d(path.Nodes[startNodeIdx]._ctrlPts, startTngOffset) +
                                 Bezier.GetBinormal3d(path.Nodes[startNodeIdx]._ctrlPts, startTngOffset, path.transform.up) * startBinrmOffset;
        return(tankEvent);
    }
Example #2
0
    public static void Initialise()
    {
        healthPickupEvent = new TankEvent <TankController>();
        ammoPickupEvent   = new TankEvent <TankController>();
        snitchPickupEvent = new TankEvent <TankController>();


        destroyedEvent = new TankEvent <TankController>();
        killEvent      = new TankEvent <TankController>();
        goalEvent      = new TankEvent <TankController>();

        snitchAppearedEvent = new UnityEvent();

        hitDetectedEvent   = new TankEvent <TankController>();
        successfulHitEvent = new TankEvent <TankController>();

        clientDisconnect = new TankDisconnectEvent <TokenCarrier>();
    }
Example #3
0
    public void ManualLoadEvents()
    {
        var event0 = TutorialEvent.CreateNewEvent(0, 0.4f, 1, 0f);

        event0._copNodeIdx   = 1;
        event0._copTngOffset = 0.9f;
        _eventManger._events.Add(event0);

        var event1 = CopSquadEvent.CreateNewEvent(3, 0.5f, 5, 0.5f, 3f);

        event1._copNum            = 2;
        event1._attackInteval     = 3f;
        event1._attackTimerOffset = 1f;
        event1._speed             = 3.0f;
        _eventManger._events.Add(event1);

        var event2 = CopSquadEvent.CreateNewEvent(7, 0.5f, 9, 1f, 5f);

        event2._copNum            = 3;
        event2._attackInteval     = 2.5f;
        event2._attackTimerOffset = 1f;
        event2._speed             = 5.0f;
        _eventManger._events.Add(event2);

        var event3 = CopMotorcadeEvent.CreateNewEvent(11, 0.5f, 13, 1f, 5f);

        event3._copNum            = 4;
        event3._attackInteval     = 2f;
        event3._attackTimerOffset = 1f;
        event3._speed             = 5.0f;
        _eventManger._events.Add(event3);

        var event4 = CopMotorcadeEvent.CreateNewEvent(13, 0.5f, 15, 1f, 5f);

        event4._copNum            = 5;
        event4._attackInteval     = 1f;
        event4._attackTimerOffset = 1f;
        event4._speed             = 5.0f;
        _eventManger._events.Add(event4);

        var event5 = TankEvent.CreateNewEvent(17, 0.5f, 19, 1f, 2f);

        event5._speed = 2.0f;
        _eventManger._events.Add(event5);

        AscendingEvent eventFinal = AscendingEvent.CreateNewEvent(20, 0.0f);

        eventFinal._ascendingCtrl._param     = 3f;
        eventFinal._ascendingCtrl._startDist = 3f;
        eventFinal._ascendingCtrl._endDist   = 0.1f;
        eventFinal._maxSpeed = 5f;
        eventFinal._acc      = 0.5f;
        _eventManger._events.Add(eventFinal);

        //test end
        //AscendingEvent eventFinal = AscendingEvent.CreateNewEvent(1, 0.5f);
        //eventFinal._ascendingCtrl._param = 3f;
        //eventFinal._ascendingCtrl._startDist = 3f;
        //eventFinal._ascendingCtrl._endDist = 0.1f;
        //eventFinal._maxSpeed = 5f;
        //eventFinal._acc = 0.5f;
        //_eventManger._events.Add(eventFinal);
    }