示例#1
0
    protected override void Start()
    {
        base.Start();
        GameManager.instance.RegisterHead(this);
        if (GameManager.instance.GetMedusaLight() != null)
        {
            GameManager.instance.GetMedusaLight().transform.parent = transform;
        }
        moveSpeed = 10;
        moving    = true;

        orientationToOffset = new OrientationToVectorDictionary(
            new Vector2(offsetXVertical, offsetYVertical),
            new Vector2(offsetXVertical, offsetYVertical),
            new Vector2(-offsetXHorizontal, offsetYHorizontal),
            new Vector2(offsetXHorizontal, offsetYHorizontal));

        orientationToSize = new OrientationToVectorDictionary(
            new Vector2(sizeXVertical, sizeYVertical),
            new Vector2(sizeXVertical, sizeYVertical),
            new Vector2(sizeXHorizontal, sizeYHorizontal),
            new Vector2(sizeXHorizontal, sizeYHorizontal));

        CurrentOrientation = GameManager.instance.GetEnemy().GetCurrentOrientation();
        SetBoxColliderSize(orientationToSize.orientationToVectorDictionary[CurrentOrientation]);
        SetBoxColliderOffset(orientationToOffset.orientationToVectorDictionary[CurrentOrientation]);
    }
示例#2
0
    protected override void Start()
    {
        base.Start();

        orientationToOffset = new OrientationToVectorDictionary(
            new Vector2(offsetXVerticalUp, -offsetYVertical),
            new Vector2(-offsetXVerticalDown, offsetYVertical),
            new Vector2(offsetXHorizontalLeft, offsetYHorizontalLeft),
            new Vector2(-offsetXHorizontalRight, offsetYHorizontalRight));

        orientationToSize = new OrientationToVectorDictionary(
            new Vector2(sizeXVertical, sizeYVertical),
            new Vector2(sizeXVertical, sizeYVertical),
            new Vector2(sizeXHorizontal, sizeYHorizontal),
            new Vector2(sizeXHorizontal, sizeYHorizontal));
        gameObject.SetActive(false);
    }
示例#3
0
    //void OnDrawGizmos() {
    //    Gizmos.DrawSphere( transform.position, 3f );
    //}

    protected override void Start()
    {
        resurrectString = "resurrect";
        base.Start();
        spriteRenderer.color = new Color(1f, 1f, 1f, 0f);
        GameManager.instance.GetHeroLightObject().range = 0f;
        CantMove = true;
        GameManager.instance.RegisterHero(this);
        athenaPillarLayer =
            (1 << LayerMask.NameToLayer("AthenaCollider"));
        animationStrings.Add(attackingString);
        animationStrings.Add(idlingString);
        animationStrings.Add(destroyingString);
        animationStrings.Add(chargingString);
        animationStrings.Add(resurrectString);
        walkingSounds = new List <AudioClip>();
        walkingSounds.Add(walk);
        walkingSounds.Add(walk2);
        walkingSounds.Add(walk3);
        walkingSounds.Add(walk4);
        walkingSounds.Add(walk5);
        walkingSounds.Add(walk6);
        //hitPoints = GameManager.instance.playerHitPoints;
        moveSpeed      = 5;
        orientationDic = new OrientationToVectorDictionary(
            new Vector2(0, 1),
            new Vector2(0, -1),
            new Vector2(-1, 0),
            new Vector2(1, 0));
        CurrentOrientation = OrientationEnum.RIGHT;
        idling             = true;
        audioSource        = transform.GetComponent <AudioSource>();
        StartCoroutine(FadeInAfterDelay());
        StartCoroutine(RegainControlAfterDelay());
        StartCoroutine(ToggleFlamesAfterDelay());
    }
示例#4
0
    protected override void Start()
    {
        systemRandom = new System.Random();
        base.Start();

        walkingSounds = new List <AudioClip>();
        walkingSounds.Add(walk);
        walkingSounds.Add(walk2);
        walkingSounds.Add(walk3);
        walkingSounds.Add(walk4);
        walkingSounds.Add(walk5);
        walkingSounds.Add(walk6);

        pegaKickList = new List <AudioClip>();
        pegaKickList.Add(pegakicks);
        pegaKickList.Add(pegakicks2);
        pegaKickList.Add(pegakicks3);
        pegaKickList.Add(pegakicks4);

        spriteRenderer.color = new Color(1f, 1f, 1f, 0f);
        intro = true;
        GameManager.instance.RegisterEnemy(this);
        pillarHeroSnakesWallLayer =
            (1 << LayerMask.NameToLayer("Hero")) |
            (1 << LayerMask.NameToLayer("Pillar")) |
            (1 << LayerMask.NameToLayer("Snakes")) |
            (1 << LayerMask.NameToLayer("Wall"));
        pillarHeroWallLayer =
            (1 << LayerMask.NameToLayer("Hero")) |
            (1 << LayerMask.NameToLayer("Pillar")) |
            (1 << LayerMask.NameToLayer("Wall"));
        spawnPointHeroLayer =
            (1 << LayerMask.NameToLayer("Hero")) |
            (1 << LayerMask.NameToLayer("SpawnPoint"));
        raycastPositionVector = new Vector2();
        if (MainLoader.ArcadeMode)
        {
            Health = MainLoader.ProvidedArcadeHealth;
        }
        else
        {
            Health = 5;
        }

        animationStrings.Add(attackingString);
        animationStrings.Add(beheadingString);
        target = GameObject.FindGameObjectWithTag("Hero").transform;

        offsetDictionary = new OrientationToVectorDictionary(
            new Vector2(0, 1 * offset),
            new Vector2(0, -1 * offset),
            new Vector2(-1 * offset, 0),
            new Vector2(1 * offset, 0));

        raycastOffsetDictionary = new OrientationToVectorDictionary(
            new Vector2(0, 1 * offset),
            new Vector2(0, 0),
            new Vector2(0, 0 + raycastOffset),
            new Vector2(0, 0 + raycastOffset));

        radiusDictionary = new OrientationToFloatDictionary(
            circleCastRadiusVertical,
            circleCastRadiusVertical,
            circleCastRadiusHorizontal,
            circleCastRadiusHorizontal);

        moveSpeed          = INITIAL_SPEED;
        CurrentOrientation = OrientationEnum.LEFT;
        InvokeRepeating("GetNewPatrolPoint", 0f, frequencyOfFindingPatrolPoint);
        BoxCollider2D[] colliders = gameObject.GetComponentsInChildren <BoxCollider2D>();
        foreach (BoxCollider2D collider in colliders)
        {
            if (collider.gameObject.tag.Equals("EnemyPhysCollider"))
            {
                physCollider = collider;
            }
        }
        audioSource = transform.GetComponent <AudioSource>();
        StartCoroutine(FadeInAfterDelay());
        StartCoroutine(SetupFade(FADE_OUT_DELAY));
        StartCoroutine(EnableMedusaAfterDelay(RE_ENABLE_DELAY_INTRO));
        StartCoroutine(EndOfIntroAfterDelay());
    }