コード例 #1
0
    public void ChangeLocationForward(EventInfo eventInfo)
    {
        CameraAngleChangeInfo floatChangeInfo = (CameraAngleChangeInfo)eventInfo;
        int newIndex      = 0;
        int previousIndex = CurrentIndex;

        if (CurrentIndex + floatChangeInfo.increments <= 3)
        {
            newIndex = CurrentIndex + floatChangeInfo.increments;
        }
        else
        {
            newIndex    = (CurrentIndex + floatChangeInfo.increments) % 4; // % operaattori tarkoitaa jakojäännöstä. Korjaa pari väärän sijainnin antamis bugia.
            turnEndFlag = true;
        }

        setCurrentLocation(newIndex);

        OnLocationChange?.Invoke();

        if (hasTurnCompleted())
        {
            OnTurnEnd?.Invoke();
            turnEndFlag = false;
        }
    }
コード例 #2
0
    public override void PerformAction()
    {
        CameraAngleChangeInfo valueChangeAction = new CameraAngleChangeInfo();

        valueChangeAction.changeofFloat = angle();
        valueChangeAction.increments    = Turns;
        thisEvent_Type = Event_Type.CAMERA_TURN;
        GameEventSystem.DoEvent(
            thisEvent_Type,
            valueChangeAction
            );
    }