private void PerformTeleport(Player player, MatchColor color)
 {
     GameObject target = null;
     switch(color) {
     case MatchColor.White:
         target = endMark;
         break;
     case MatchColor.Red:
         target = redMark;
         break;
     case MatchColor.Blue:
         target = blueMark;
         break;
     case MatchColor.Green:
         target = greenMark;
         break;
     }
     if(target) {
         Vector3 start = player.transform.position;
         Vector3 end = target.transform.position;
         end.z = start.z;
         player.transform.position = end;
         player.stuffuvSpawner.DestroyStuffuvs();
         if(areaspawner)
             player.SetSpawner(areaspawner);
         if(makeStuffuvs)
             player.stuffuvSpawner.SpawnStuffuvsAroundTarget();
     }
 }
Exemple #2
0
 public void HandleMatchLight(MatchColor color)
 {
     heldMatch = color;
     if(onTeleporter) {
         tp.DoTeleport(this, color);
     }
 }
Exemple #3
0
    private void SelectByColor(MatchColor color)
    {
        GameObject target = null;

        switch (color)
        {
        case MatchColor.White:
            target = whiteMatch;
            break;

        case MatchColor.Red:
            target = redMatch;
            break;

        case MatchColor.Blue:
            target = blueMatch;
            break;

        case MatchColor.Green:
            target = greenMatch;
            break;
        }
        if (target)
        {
            MoveSelectTo(target);
            selection = color;
        }
    }
Exemple #4
0
 public void HandleMatchLight(MatchColor color)
 {
     heldMatch = color;
     if (onTeleporter)
     {
         tp.DoTeleport(this, color);
     }
 }
Exemple #5
0
 private void MoveSelectTo(GameObject match)
 {
     Vector3 start = transform.position;
     Vector3 end = match.transform.position;
     end.z = start.z;
     transform.position = end;
     selection = MatchColor.Invalid;
 }
Exemple #6
0
 void DisableStriker()
 {
     var renderers = gameObject.GetComponentsInChildren<Renderer>();
     foreach(Renderer r in renderers) {
         r.enabled = false;
         lightAttempt = MatchColor.Invalid;
     }
 }
Exemple #7
0
 void Reset()
 {
     HideStriker();
     strikerEnabled = false;
     lightAttempt   = MatchColor.Invalid;
     SetBubbleToStart();
     bubbleDirection = RIGHT;
     bubbleSpeed     = MIN_SPEED;
 }
Exemple #8
0
    private void MoveSelectTo(GameObject match)
    {
        Vector3 start = transform.position;
        Vector3 end   = match.transform.position;

        end.z = start.z;
        transform.position = end;
        selection          = MatchColor.Invalid;
    }
Exemple #9
0
 public void KillPlayer()
 {
     white = red = blue = green = 0;
     heldMatch = MatchColor.Invalid;
     Spawner s = spawner.GetComponent<Spawner>();
     if(s) {
         s.Respawn(this);
     }
 }
Exemple #10
0
    void DisableStriker()
    {
        var renderers = gameObject.GetComponentsInChildren <Renderer>();

        foreach (Renderer r in renderers)
        {
            r.enabled    = false;
            lightAttempt = MatchColor.Invalid;
        }
    }
Exemple #11
0
 public void DoTeleport(Player player, MatchColor color)
 {
     if(teleportToSpawner) {
         Spawner s = teleportToSpawner.GetComponent<Spawner>();
         if(s) {
             player.SetSpawner(teleportToSpawner);
             s.Respawn(player);
         }
     } else PerformTeleport(player, color);
 }
Exemple #12
0
    public void KillPlayer()
    {
        white     = red = blue = green = 0;
        heldMatch = MatchColor.Invalid;
        Spawner s = spawner.GetComponent <Spawner>();

        if (s)
        {
            s.Respawn(this);
        }
    }
Exemple #13
0
 private bool CheckSelectionIsZero(MatchColor col)
 {
     switch(col) {
     case MatchColor.White:
         return player.WhiteMatches() == 0;
     case MatchColor.Red:
         return player.RedMatches() == 0;
     case MatchColor.Blue:
         return player.BlueMatches() == 0;
     case MatchColor.Green:
         return player.GreenMatches() == 0;
     }
     return false;
 }
Exemple #14
0
        public override string DebugPrint()
        {
            if (MoveVector.X >= 0)
            {
                return(string.Format(
                           "-IF|{0}+",
                           MatchColor.ShortFormat()
                           ).Center(10));
            }

            return(string.Format(
                       "+IF|{0}-",
                       MatchColor.ShortFormat()
                       ).Center(10));
        }
Exemple #15
0
 public void DoTeleport(Player player, MatchColor color)
 {
     if (teleportToSpawner)
     {
         Spawner s = teleportToSpawner.GetComponent <Spawner>();
         if (s)
         {
             player.SetSpawner(teleportToSpawner);
             s.Respawn(player);
         }
     }
     else
     {
         PerformTeleport(player, color);
     }
 }
Exemple #16
0
    private bool CheckSelectionIsZero(MatchColor col)
    {
        switch (col)
        {
        case MatchColor.White:
            return(player.WhiteMatches() == 0);

        case MatchColor.Red:
            return(player.RedMatches() == 0);

        case MatchColor.Blue:
            return(player.BlueMatches() == 0);

        case MatchColor.Green:
            return(player.GreenMatches() == 0);
        }
        return(false);
    }
Exemple #17
0
    void OnTriggerEnter(Collider other)
    {
        tp = other.gameObject.GetComponent <TeleporterController>();
        if (tp)
        {
            onTeleporter = true;
            return;
        }
        MatchBook mb = other.gameObject.GetComponent <MatchBook>();

        if (mb)
        {
            bool pickedup = mb.PickUp();
            if (pickedup)
            {
                Debug.Log("Picked up a matchbook");
                MatchColor col = mb.GetColor();
                switch (col)
                {
                case MatchColor.White:
                    white += mb.quantity;
                    break;

                case MatchColor.Red:
                    red += mb.quantity;
                    break;

                case MatchColor.Blue:
                    blue += mb.quantity;
                    break;

                case MatchColor.Green:
                    green += mb.quantity;
                    break;
                }
            }
        }
        Stuffuv stuffuv = other.gameObject.GetComponent <Stuffuv>();

        if (stuffuv)
        {
            KillPlayer();
        }
    }
Exemple #18
0
    public void UseMatch(MatchColor color)
    {
        switch (color)
        {
        case MatchColor.White:
            white--;
            break;

        case MatchColor.Red:
            red--;
            break;

        case MatchColor.Blue:
            blue--;
            break;

        case MatchColor.Green:
            green--;
            break;
        }
    }
Exemple #19
0
 private void SelectByColor(MatchColor color)
 {
     GameObject target = null;
     switch(color) {
     case MatchColor.White:
         target = whiteMatch;
         break;
     case MatchColor.Red:
         target = redMatch;
         break;
     case MatchColor.Blue:
         target = blueMatch;
         break;
     case MatchColor.Green:
         target = greenMatch;
         break;
     }
     if(target) {
         MoveSelectTo(target);
         selection = color;
     }
 }
Exemple #20
0
    private void PerformTeleport(Player player, MatchColor color)
    {
        GameObject target = null;

        switch (color)
        {
        case MatchColor.White:
            target = endMark;
            break;

        case MatchColor.Red:
            target = redMark;
            break;

        case MatchColor.Blue:
            target = blueMark;
            break;

        case MatchColor.Green:
            target = greenMark;
            break;
        }
        if (target)
        {
            Vector3 start = player.transform.position;
            Vector3 end   = target.transform.position;
            end.z = start.z;
            player.transform.position = end;
            player.stuffuvSpawner.DestroyStuffuvs();
            if (areaspawner)
            {
                player.SetSpawner(areaspawner);
            }
            if (makeStuffuvs)
            {
                player.stuffuvSpawner.SpawnStuffuvsAroundTarget();
            }
        }
    }
Exemple #21
0
 void Reset()
 {
     HideStriker();
     strikerEnabled = false;
     lightAttempt = MatchColor.Invalid;
     SetBubbleToStart();
     bubbleDirection = RIGHT;
     bubbleSpeed = MIN_SPEED;
 }
Exemple #22
0
    void Update()
    {
        sprite.renderer.enabled = player.HasAnyMatches();

        if(w != player.WhiteMatches()) {
            w = player.WhiteMatches();
            whiteCount.text = player.WhiteMatches().ToString();
            whiteCount.Commit();
        }
        if(r != player.RedMatches()) {
            r = player.RedMatches();
            redCount.text = player.RedMatches().ToString();
            redCount.Commit();
        }
        if(b != player.BlueMatches()) {
            b = player.BlueMatches();
            blueCount.text = player.BlueMatches().ToString();
            blueCount.Commit();
        }
        if(g != player.GreenMatches()) {
            g = player.GreenMatches();
            greenCount.text = player.GreenMatches().ToString();
            greenCount.Commit();
        }

        if(!player.HasAnyMatches()) {
            selection = MatchColor.Invalid;
            noMatches = true;
            return;
        }

        if(noMatches || CheckSelectionIsZero(selection)) {
            noMatches = false;
            if(player.WhiteMatches() > 0)
                SelectByColor(MatchColor.White);
            else if(player.RedMatches() > 0)
                SelectByColor(MatchColor.Red);
            else if(player.BlueMatches() > 0)
                SelectByColor(MatchColor.Blue);
            else if(player.GreenMatches() > 0)
                SelectByColor(MatchColor.Green);
        }

        if(Input.GetKeyUp (KeyCode.Alpha1) && player.WhiteMatches() > 0) {
            SelectByColor(MatchColor.White);
        }

        if(Input.GetKeyUp (KeyCode.Alpha2) && player.RedMatches() > 0) {
            SelectByColor(MatchColor.Red);
        }

        if(Input.GetKeyUp (KeyCode.Alpha3) && player.BlueMatches() > 0) {
            SelectByColor(MatchColor.Blue);
        }

        if(Input.GetKeyUp (KeyCode.Alpha4) && player.GreenMatches() > 0) {
            SelectByColor(MatchColor.Green);
        }
    }
Exemple #23
0
    void Update()
    {
        if (darkness.IsDarkDisabled())
        {
            return;
        }

        Player p = target.GetComponent <Player>();

        if (Input.GetKeyDown(KeyCode.LeftShift) || Input.GetKeyDown(KeyCode.RightShift))
        {
            Debug.Log(p.HoldingMatch());
            if (p.HoldingMatch())
            {
                SnuffMatch(true);
            }
            return;
        }

        //*
        if (!strikerEnabled && p && !p.HasAnyMatches())
        {
            Reset();
            SetBubbleToStart();
            strikerEnabled = false;
            return;
        }


        if (!strikerEnabled)
        {
            if (Input.GetKeyDown(KeyCode.Space))
            {
                if (p.HoldingMatch() && darkness.GetDarkLevel() == 1)
                {
                    p.SnuffMatch();
                }
                if (!p.HoldingMatch())
                {
                    strikerEnabled = true;
                    matchSounds.PlayStrikeSound();
                    darkness.FlashDarkness();
                    lightAttempt = selector.GetSelection();
                    p.UseMatch(lightAttempt);
                }
            }
            return;
        }
        else
        {
            var renderers = gameObject.GetComponentsInChildren <Renderer>();
            foreach (Renderer r in renderers)
            {
                r.enabled = true;
            }
            if (Input.GetKeyDown(KeyCode.Space))
            {
                darkness.FlashDarkness();
                if (!CheckStrike())
                {
                    Fail();
                }
                else
                {
                    Success();
                }
            }
        }
        //*/
    }
Exemple #24
0
 public void SnuffMatch()
 {
     Debug.Log("Match snuffed");
     heldMatch = MatchColor.Invalid;
 }
Exemple #25
0
 public void UseMatch(MatchColor color)
 {
     switch(color) {
     case MatchColor.White:
         white--;
         break;
     case MatchColor.Red:
         red--;
         break;
     case MatchColor.Blue:
         blue--;
         break;
     case MatchColor.Green:
         green--;
         break;
     }
 }
Exemple #26
0
 public void SnuffMatch()
 {
     Debug.Log("Match snuffed");
     heldMatch = MatchColor.Invalid;
 }
Exemple #27
0
 public void HandleMatchFromRespawn()
 {
     heldMatch = MatchColor.White;
     darkness.MaxLight();
 }
Exemple #28
0
 public void HandleMatchFromRespawn()
 {
     heldMatch = MatchColor.White;
     darkness.MaxLight();
 }
Exemple #29
0
 public void ResetMatches()
 {
     Debug.Log("Match resets");
     heldMatch = MatchColor.White;
     white     = red = blue = green = 0;
 }
Exemple #30
0
    void Update()
    {
        if(darkness.IsDarkDisabled()) return;

        Player p = target.GetComponent<Player>();

        if(Input.GetKeyDown(KeyCode.LeftShift) || Input.GetKeyDown(KeyCode.RightShift)) {
            Debug.Log(p.HoldingMatch());
            if(p.HoldingMatch()) {
                SnuffMatch(true);
            }
            return;
        }

        //*
        if(!strikerEnabled && p && !p.HasAnyMatches()) {
            Reset ();
            SetBubbleToStart();
            strikerEnabled = false;
            return;
        }

        if(!strikerEnabled) {
            if(Input.GetKeyDown(KeyCode.Space)) {
                if(p.HoldingMatch() && darkness.GetDarkLevel() == 1) {
                    p.SnuffMatch();
                }
                if(!p.HoldingMatch()) {
                    strikerEnabled = true;
                    matchSounds.PlayStrikeSound();
                    darkness.FlashDarkness();
                    lightAttempt = selector.GetSelection();
                    p.UseMatch(lightAttempt);
                }
            }
            return;
        }
        else {
            var renderers = gameObject.GetComponentsInChildren<Renderer>();
            foreach(Renderer r in renderers) {
                r.enabled = true;
            }
            if(Input.GetKeyDown(KeyCode.Space)) {
                darkness.FlashDarkness();
                if(!CheckStrike()) {
                    Fail ();
                } else Success();
            }
        }
        //*/
    }
Exemple #31
0
    void Update()
    {
        sprite.renderer.enabled = player.HasAnyMatches();

        if (w != player.WhiteMatches())
        {
            w = player.WhiteMatches();
            whiteCount.text = player.WhiteMatches().ToString();
            whiteCount.Commit();
        }
        if (r != player.RedMatches())
        {
            r             = player.RedMatches();
            redCount.text = player.RedMatches().ToString();
            redCount.Commit();
        }
        if (b != player.BlueMatches())
        {
            b = player.BlueMatches();
            blueCount.text = player.BlueMatches().ToString();
            blueCount.Commit();
        }
        if (g != player.GreenMatches())
        {
            g = player.GreenMatches();
            greenCount.text = player.GreenMatches().ToString();
            greenCount.Commit();
        }

        if (!player.HasAnyMatches())
        {
            selection = MatchColor.Invalid;
            noMatches = true;
            return;
        }

        if (noMatches || CheckSelectionIsZero(selection))
        {
            noMatches = false;
            if (player.WhiteMatches() > 0)
            {
                SelectByColor(MatchColor.White);
            }
            else if (player.RedMatches() > 0)
            {
                SelectByColor(MatchColor.Red);
            }
            else if (player.BlueMatches() > 0)
            {
                SelectByColor(MatchColor.Blue);
            }
            else if (player.GreenMatches() > 0)
            {
                SelectByColor(MatchColor.Green);
            }
        }

        if (Input.GetKeyUp(KeyCode.Alpha1) && player.WhiteMatches() > 0)
        {
            SelectByColor(MatchColor.White);
        }

        if (Input.GetKeyUp(KeyCode.Alpha2) && player.RedMatches() > 0)
        {
            SelectByColor(MatchColor.Red);
        }

        if (Input.GetKeyUp(KeyCode.Alpha3) && player.BlueMatches() > 0)
        {
            SelectByColor(MatchColor.Blue);
        }

        if (Input.GetKeyUp(KeyCode.Alpha4) && player.GreenMatches() > 0)
        {
            SelectByColor(MatchColor.Green);
        }
    }
Exemple #32
0
 public void ResetMatches()
 {
     Debug.Log("Match resets");
     heldMatch = MatchColor.White;
     white = red = blue = green = 0;
 }