示例#1
0
 private void DrawSpritesHook(On.PlayerGraphics.orig_DrawSprites orig, PlayerGraphics self, RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, float timeStacker, Vector2 camPos)
 {
     self.ApplyPalette(sLeaser, rCam, rCam.currentPalette);
     orig.Invoke(self, sLeaser, rCam, timeStacker, camPos);
     if (self.player.playerState.slugcatCharacter == PlayerManager.GetCustomPlayer("Electric").SlugcatIndex)
     {
         for (int i = 0; i < EVars.Count; i++)
         {
             if (EVars[i].ply == self.player)
             {
                 if (!EVars[i].antennaActive)
                 {
                     sLeaser.sprites[13].scale = 0.01f;
                     sLeaser.sprites[12].scale = 0.01f;
                 }
                 else
                 {
                     sLeaser.sprites[13].scale  = 2.3f;
                     sLeaser.sprites[12].scaleX = 0.95f;
                     sLeaser.sprites[12].scaleY = 4f;
                 }
                 sLeaser.sprites[12].x        = sLeaser.sprites[3].x;
                 sLeaser.sprites[12].y        = sLeaser.sprites[3].y + 2f;
                 sLeaser.sprites[12].rotation = sLeaser.sprites[3].rotation;
                 sLeaser.sprites[13].x        = sLeaser.sprites[3].x;
                 sLeaser.sprites[13].y        = sLeaser.sprites[3].y + 2.6f;
                 sLeaser.sprites[13].rotation = sLeaser.sprites[3].rotation;
             }
         }
     }
 }
示例#2
0
//        private static void CamoIntensController() {
//            if (Input.GetKeyDown((KeyCode)117))
//                _camoIntens += 0.1f;
//            if (Input.GetKeyDown((KeyCode)105))
//                _camoIntens -= 0.1f;
//        }
//
//        private static void CamoPercentBalance() {
//            if (Input.GetKeyDown((KeyCode)104))
//                _camoPercentBalance += 0.1f;
//            if (Input.GetKeyDown((KeyCode)106))
//                _camoPercentBalance -= 0.1f;
//        }

        #endregion

        #region Hooks

        public static void Player_Update_Pre(Player __instance)
        {
            PlayerGraphics   g = (PlayerGraphics)__instance.graphicsModule;
            SlugcatCamoState s = GetOrCreateCamoState(g);

            s.Player = __instance;
        }
    protected override void LoadDataInternal()
    {
        base.LoadDataInternal();
        Init();

        heroData = Main.GameState.GetHeroData(characterSlotID);

        if (heroData != null)
        {
            playerIcon.gameObject.SetActive(true);
            teleportIcon.gameObject.SetActive(true);
            newHeroIcon.gameObject.SetActive(false);

            playerIcon.sprite   = PlayerGraphics.GetPlayerIcon(heroData);
            teleportIcon.sprite = PlayerGraphics.GetTeleportIcon(heroData);

            characterName.text = heroData.CharacterName;
            characterLvl.text  = "Lvl " + heroData.Level.ToString();
        }
        else
        {
            playerIcon.gameObject.SetActive(false);
            teleportIcon.gameObject.SetActive(false);
            newHeroIcon.gameObject.SetActive(true);

            characterName.text = "Empty";
            characterLvl.text  = "";
        }
    }
示例#4
0
    // private bool hit;

    void Awake()
    {
        audioController = GameObject.Find("AudioController").GetComponent <AudioController>();
        timerScript     = GameObject.Find("StartingLine").GetComponent <Timer>();
        playerGraphics  = GetComponentInChildren <PlayerGraphics>();
        playerTail      = GetComponentInChildren <PlayerTail>();
    }
示例#5
0
 private void Start()
 {
     leftGraphics       = AllPlayerGraphics[0];
     rightGraphics      = AllPlayerGraphics[0];
     LeftPlayer.sprite  = leftGraphics.FrontSprite;
     RightPlayer.sprite = rightGraphics.FrontSprite;
 }
示例#6
0
    public Player() : base(0.3f, 2.0f, 100f)
    {
        _physics.airControl = true;

        _inventory = new ItemContainer[36];

        for (int index = 0; index < _inventory.Length; index++)
        {
            _inventory[index] = new ItemContainer();
        }

        _playerGraphics  = new PlayerGraphics(this);
        _playerInterface = new PlayerInterface(this);

        _pickedItemContainer = inventory[0];

        _playerAttackDamage = new Damage(this);

        Item[] items = Item.GetItemAll();
        for (int index = 0; index < inventorySize; index++)
        {
            if (index >= items.Length)
            {
                break;
            }

            inventory[index].Apply(new ItemStack(items[index], 30));
        }

        CreateCommand();
    }
示例#7
0
    private void InitSpritesHook(On.PlayerGraphics.orig_InitiateSprites orig, PlayerGraphics self, RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam)
    {
        if (self.player.playerState.slugcatCharacter == PlayerManager.GetCustomPlayer("Electric").SlugcatIndex)
        {
            sLeaser.sprites = new FSprite[14];
        }
        else
        {
            sLeaser.sprites = new FSprite[12];
        }
        sLeaser.sprites[0]         = new FSprite("BodyA", true);
        sLeaser.sprites[0].anchorY = 0.7894737f;
        sLeaser.sprites[1]         = new FSprite("HipsA", true);
        TriangleMesh.Triangle[] tris = new TriangleMesh.Triangle[]
        {
            new TriangleMesh.Triangle(0, 1, 2),
            new TriangleMesh.Triangle(1, 2, 3),
            new TriangleMesh.Triangle(4, 5, 6),
            new TriangleMesh.Triangle(5, 6, 7),
            new TriangleMesh.Triangle(8, 9, 10),
            new TriangleMesh.Triangle(9, 10, 11),
            new TriangleMesh.Triangle(12, 13, 14),
            new TriangleMesh.Triangle(2, 3, 4),
            new TriangleMesh.Triangle(3, 4, 5),
            new TriangleMesh.Triangle(6, 7, 8),
            new TriangleMesh.Triangle(7, 8, 9),
            new TriangleMesh.Triangle(10, 11, 12),
            new TriangleMesh.Triangle(11, 12, 13)
        };
        TriangleMesh triangleMesh = new TriangleMesh("Futile_White", tris, false, false);

        sLeaser.sprites[2]         = triangleMesh;
        sLeaser.sprites[3]         = new FSprite("HeadA0", true);
        sLeaser.sprites[4]         = new FSprite("LegsA0", true);
        sLeaser.sprites[4].anchorY = 0.25f;
        sLeaser.sprites[5]         = new FSprite("PlayerArm0", true);
        sLeaser.sprites[5].anchorX = 0.9f;
        sLeaser.sprites[5].scaleY  = -1f;
        sLeaser.sprites[6]         = new FSprite("PlayerArm0", true);
        sLeaser.sprites[6].anchorX = 0.9f;
        sLeaser.sprites[7]         = new FSprite("OnTopOfTerrainHand", true);
        sLeaser.sprites[8]         = new FSprite("OnTopOfTerrainHand", true);
        sLeaser.sprites[8].scaleX  = -1f;
        sLeaser.sprites[9]         = new FSprite("FaceA0", true);
        sLeaser.sprites[11]        = new FSprite("pixel", true);
        sLeaser.sprites[11].scale  = 5f;
        sLeaser.sprites[10]        = new FSprite("Futile_White", true);
        sLeaser.sprites[10].shader = rCam.game.rainWorld.Shaders["FlatLight"];
        if (self.player.playerState.slugcatCharacter == PlayerManager.GetCustomPlayer("Electric").SlugcatIndex)
        {
            sLeaser.sprites[12]         = new FSprite("pixel", false);
            sLeaser.sprites[12].scaleY  = 4f;
            sLeaser.sprites[12].scaleX  = 1f;
            sLeaser.sprites[12].anchorY = -1.02f;
            sLeaser.sprites[13]         = new FSprite("pixel", false);
            sLeaser.sprites[13].scale   = 2.3f;
            sLeaser.sprites[13].anchorY = -3.1f;
        }
        self.AddToContainer(sLeaser, rCam, null);
    }
示例#8
0
 void Awake()
 {
     graphics         = GetComponent <PlayerGraphics> ();
     cameraController = Camera.main.GetComponent <CameraController> ();
     comboController  = GameObject.FindGameObjectWithTag("ComboText").GetComponent <ComboController>();
     playerSFX        = GetComponent <PlayerSFX>();
     enemiesMask      = LayerMask.GetMask("Enemies");
 }
示例#9
0
 private static SlugcatCamoState GetOrCreateCamoState(PlayerGraphics g)
 {
     if (!CamoStates.ContainsKey(g))
     {
         CamoStates.Add(g, new SlugcatCamoState());
     }
     return(CamoStates[g]);
 }
 public override Color ShortCutColor()
 {
     if ((State as PlayerState).slugcatCharacter == 1)
     {
         return(new Color(0.4f, 0.49411764705f, 0.8f));
     }
     return(PlayerGraphics.SlugcatColor((State as PlayerState).slugcatCharacter));
 }
示例#11
0
 public override Color ShortCutColor()
 {
     if (MonklandSteamManager.isInGame)
     {
         return(MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf((this.abstractPhysicalObject as patch_AbstractPhysicalObject).owner)]);
     }
     return(PlayerGraphics.SlugcatColor((base.State as PlayerState).slugcatCharacter));
 }
示例#12
0
        public static void PlayerGraphics_DrawSprites_Post(PlayerGraphics __instance,
                                                           RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, float timeStacker, Vector2 camPos)
        {
            SlugcatCamoState s = GetOrCreateCamoState(__instance);

            s.SpriteLeaser = sLeaser;
            s.RoomCamera   = rCam;
        }
示例#13
0
        public PlayerShell(Network.PlayerInfo info)
        {
            RWConsole.LogInfo("PlayerShell being created...");

            Graphics   = new PlayerGraphics(info.Player);
            info.Shell = this;
            RWConsole.LogInfo("PlayerShell created.");
        }
    public PlayerGraphics GetBySteamId(string steamId)
    {
        PlayerGraphics playerGraphics = null;

        _players.TryGetValue(steamId, out playerGraphics);

        return(playerGraphics);
    }
示例#15
0
        public static void PlayerGraphics_Update_Pre(PlayerGraphics __instance)
        {
            SlugcatCamoState s = GetOrCreateCamoState(__instance);

            ChangeColor(s);
            CalculateColorDeltaSum(s);
            CalculateCamoPercent(s);
            CalculateVisibilityBonus(s);
        }
示例#16
0
 private void SetupCachedComponents()
 {
     m_Input     = GetComponent <PlayerInput>();
     m_Weapon    = GetComponent <PlayerWeapon>();
     m_Graphics  = GetComponent <PlayerGraphics>();
     m_UI        = GetComponent <PlayerCanvas>();
     m_Collider  = GetComponent <Collider2D>();
     m_Inventory = GetComponent <PlayerInventoryController>();
 }
示例#17
0
 private void PlayerGraphicsUpdateHook(On.PlayerGraphics.orig_Update orig, PlayerGraphics self)
 {
     if (self.player.playerState.slugcatCharacter == PlayerManager.GetCustomPlayer("Electric").SlugcatIndex)
     {
         for (int i = 0; i < EVars.Count; i++)
         {
             if (EVars[i].ply == self.player)
             {
                 if (self.lightSource != null)
                 {
                     self.lightSource.stayAlive = true;
                     self.lightSource.setPos    = new Vector2?(self.player.firstChunk.pos);
                     self.lightSource.setRad    = new float?(300f * Mathf.Pow(EVars[i].lightFlash * UnityEngine.Random.value, 0.01f) * Mathf.Lerp(0.5f, 2f, 0.8f) - 1.3f);
                     self.lightSource.setAlpha  = new float?(Mathf.Pow(EVars[i].lightFlash * UnityEngine.Random.value, 0.01f) - 0.8f);
                     float num = EVars[i].lightFlash * UnityEngine.Random.value;
                     num = Mathf.Lerp(num, 1f, 0.5f * (1f - self.player.room.Darkness(self.player.firstChunk.pos)));
                     self.lightSource.color = new Color(num, num, 1.5f);
                     if (EVars[i].lightFlash <= 0f)
                     {
                         self.lightSource.Destroy();
                     }
                     if (self.lightSource.slatedForDeletetion)
                     {
                         self.lightSource = null;
                     }
                 }
                 else
                 {
                     if (EVars[i].lightFlash > 0f)
                     {
                         self.lightSource = new LightSource(self.player.firstChunk.pos, false, new Color(1f, 1f, 1f), self.player);
                         self.lightSource.affectedByPaletteDarkness = 0f;
                         self.lightSource.requireUpKeep             = true;
                         self.player.room.AddObject(self.lightSource);
                     }
                 }
                 if (EVars[i].lightFlash > 0f)
                 {
                     EVars[i].lightFlash = Mathf.Max(0f, EVars[i].lightFlash - 0.0333933346f);
                 }
                 if (EVars[i].chargedActive)
                 {
                     for (int s = 0; s < (int)Mathf.Lerp(4f, 5f, 0.15f); s++)
                     {
                         Vector2 rng = new Vector2(0f, UnityEngine.Random.Range(-15f, 10f));
                         self.player.room.AddObject(new Spark(self.player.firstChunk.pos + rng, Custom.RNV() * Mathf.Lerp(4f, 14f, UnityEngine.Random.value), new Color(0.7f, 0.7f, 1f), null, 2, 14));
                     }
                 }
             }
         }
     }
     orig.Invoke(self);
 }
示例#18
0
    public override void ApplyPalette(RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, RoomPalette palette)
    {
        float voidInEffect = 0f;

        if ((this.player as patch_Player).voidEnergy)
        {
            voidInEffect = (1f - (this.player as patch_Player).maxEnergy) / 1.2f;
        }
        Color color  = Color.Lerp(PlayerGraphics.SlugcatColor(player.playerState.slugcatCharacter), Color.white, voidInEffect);
        Color color2 = palette.blackColor;

        if (malnourished > 0f)
        {
            float num = (!player.Malnourished) ? Mathf.Max(0f, malnourished - 0.005f) : malnourished;
            color  = Color.Lerp(color, Color.gray, 0.4f * num);
            color2 = Color.Lerp(color2, Color.Lerp(Color.white, palette.fogColor, 0.5f), 0.2f * num * num);
        }
        if (player.playerState.slugcatCharacter == 0)
        {
            color2 = Color.Lerp(new Color(1f, 1f, 1f), color, 0.3f);
            color  = Color.Lerp(palette.blackColor, Color.Lerp(PlayerGraphics.SlugcatColor(player.playerState.slugcatCharacter), Color.white, voidInEffect), Mathf.Lerp(0.08f, 0.04f, palette.darkness));
        }
        else if (player.room.game.IsStorySession)
        {
            color  = Color.Lerp(PlayerGraphics.SlugcatColor(player.playerState.slugcatCharacter), Color.white, voidInEffect);
            color2 = Color.Lerp(new Color(1f, 1f, 1f), color, 0.3f);
            color  = Color.Lerp(palette.blackColor, Color.Lerp(PlayerGraphics.SlugcatColor(player.playerState.slugcatCharacter), Color.white, voidInEffect), Mathf.Lerp(0.08f, 0.04f, palette.darkness));
        }
        for (int i = 0; i < sLeaser.sprites.Length; i++)
        {
            sLeaser.sprites[i].color = color;
        }
        color = Color.Lerp(PlayerGraphics.SlugcatColor(player.playerState.slugcatCharacter), Color.white, voidInEffect);
        sLeaser.sprites[11].color = Color.Lerp(color, Color.white, 0.3f);
        sLeaser.sprites[10].color = color;
        sLeaser.sprites[13].color = Color.Lerp(color, Color.white, 0.3f);
        sLeaser.sprites[12].color = color;
        if ((this.player as patch_Player).past22000)
        {
            sLeaser.sprites[13].color = Color.Lerp(color, Color.white, 0.9f);
            sLeaser.sprites[12].color = Color.Lerp(color, Color.white, 0.5f);
        }
        sLeaser.sprites[9].color = color2;

        for (int i = 0; i < cosmetics.Count; i++)
        {
            cosmetics[i].ApplyPalette(sLeaser, rCam, palette);
        }
    }
    public void SetPlayer(PlayerGraphics playerGraphics)
    {
        if (CurrentPlayer != null)
        {
            CurrentPlayer.Hide(false);
        }

        CurrentPlayer = playerGraphics;

        CurrentPlayer.Hide(true);

        SpectateMode = SpectateMode.POV;

        _crosshair.SetActive(true);
    }
示例#20
0
 private void Start()
 {
     this.hasHoop                 = false;
     this.sinceLast               = 0.0f;
     this.source                  = GetComponent <AudioSource>();
     this.isMoving                = false;
     this.isInMenu                = false;
     this.interactable            = null;
     this.attributs               = GetComponent <PlayerAttributes>();
     this.rigidbody               = GetComponent <Rigidbody>();
     this.quests                  = GetComponent <PlayerQuestManager>();
     this.graphic                 = GetComponentInChildren <PlayerGraphics>();
     this.localCameraPositionSave = camera.transform.localPosition;
     this.localCameraRotationSave = camera.transform.localRotation;
 }
示例#21
0
    private void Update()
    {
        if (Input.GetAxis("Controller0MoveVertical") == 1 && !LeftUpHeld)
        {
            //next character left
            leftSelectionIndex = (leftSelectionIndex + 1) % AllPlayerGraphics.Length;
            leftGraphics       = AllPlayerGraphics[leftSelectionIndex];
            LeftPlayer.sprite  = leftGraphics.FrontSprite;
            LeftUpHeld         = true;
        }
        else if (Input.GetAxis("Controller0MoveVertical") == -1 && !LeftDownHeld)
        {
            //previous character left
            leftSelectionIndex = leftSelectionIndex == 0 ? AllPlayerGraphics.Length - 1 : (leftSelectionIndex - 1);
            leftGraphics       = AllPlayerGraphics[leftSelectionIndex];
            LeftPlayer.sprite  = leftGraphics.FrontSprite;
            LeftDownHeld       = true;
        }
        if (Input.GetAxis("Controller1MoveVertical") == 1 && !RightUpHeld)
        {
            //next character right
            rightSelectionIndex = (rightSelectionIndex + 1) % AllPlayerGraphics.Length;
            rightGraphics       = AllPlayerGraphics[rightSelectionIndex];
            RightPlayer.sprite  = rightGraphics.FrontSprite;
            RightUpHeld         = true;
        }
        else if (Input.GetAxis("Controller1MoveVertical") == -1 && !RightDownHeld)
        {
            //previous character right
            rightSelectionIndex = rightSelectionIndex == 0 ? AllPlayerGraphics.Length - 1 : (rightSelectionIndex - 1);
            rightGraphics       = AllPlayerGraphics[rightSelectionIndex];
            RightPlayer.sprite  = rightGraphics.FrontSprite;
            RightDownHeld       = true;
        }

        if (Input.GetAxis("Controller0MoveVertical") == 0)
        {
            LeftDownHeld = false;
            LeftUpHeld   = false;
        }
        if (Input.GetAxis("Controller1MoveVertical") == 0)
        {
            RightDownHeld = false;
            RightUpHeld   = false;
        }
    }
示例#22
0
        private static void ApplyPaletteHK(On.PlayerGraphics.orig_ApplyPalette orig, PlayerGraphics self,
                                           RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, RoomPalette palette)
        {
            orig(self, sLeaser, rCam, palette);
            Color           body;
            AbsPhyObjFields field = AbstractPhysicalObjectHK.GetField(self.owner.abstractPhysicalObject);

            if (!MonklandSteamManager.isInGame)
            {
                body = PlayerGraphics.SlugcatColor(self.player.playerState.slugcatCharacter);
            }
            else
            {
                body = MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf(field.owner)];
            }
            Color eyes = palette.blackColor;

            if (self.malnourished > 0f)
            {
                float num = (!self.player.Malnourished) ? Mathf.Max(0f, self.malnourished - 0.005f) : self.malnourished;
                body = Color.Lerp(body, Color.gray, 0.4f * num);
                eyes = Color.Lerp(eyes, Color.Lerp(Color.white, palette.fogColor, 0.5f), 0.2f * num * num);
            }
            if (self.player.playerState.slugcatCharacter == 3)
            {
                eyes = Color.Lerp(new Color(1f, 1f, 1f), body, 0.3f);
                body = Color.Lerp(palette.blackColor, Custom.HSL2RGB(0.63055557f, 0.54f, 0.5f), Mathf.Lerp(0.08f, 0.04f, palette.darkness));
            }
            for (int i = 0; i < 12; i++) // Hardcoded sLeaser.sprites.Length to prevent ignoring sprite adding mods
            {
                sLeaser.sprites[i].color = body;
            }
            if (MonklandSteamManager.isInGame)
            {
                sLeaser.sprites[11].color = Color.Lerp(MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf(field.owner)], Color.white, 0.3f);
                sLeaser.sprites[10].color = MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf(field.owner)];
                sLeaser.sprites[9].color  = MonklandSteamManager.GameManager.playerEyeColors[MonklandSteamManager.connectedPlayers.IndexOf(field.owner)];
            }
            else
            {
                sLeaser.sprites[11].color = Color.Lerp(PlayerGraphics.SlugcatColor(self.player.playerState.slugcatCharacter), Color.white, 0.3f);
                sLeaser.sprites[10].color = PlayerGraphics.SlugcatColor(self.player.playerState.slugcatCharacter);
                sLeaser.sprites[9].color  = eyes;
            }
        }
示例#23
0
        public override void ApplyPalette(RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, RoomPalette palette)
        {
            Color color;

            if (!MonklandSteamManager.isInGame)
            {
                color = PlayerGraphics.SlugcatColor(this.player.playerState.slugcatCharacter);
            }
            else
            {
                color = MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf((this.player.abstractPhysicalObject as patch_AbstractPhysicalObject).owner)];
            }
            Color color2 = palette.blackColor;

            if (this.malnourished > 0f)
            {
                float num = (!this.player.Malnourished) ? Mathf.Max(0f, this.malnourished - 0.005f) : this.malnourished;
                color  = Color.Lerp(color, Color.gray, 0.4f * num);
                color2 = Color.Lerp(color2, Color.Lerp(Color.white, palette.fogColor, 0.5f), 0.2f * num * num);
            }
            if (this.player.playerState.slugcatCharacter == 3)
            {
                color2 = Color.Lerp(new Color(1f, 1f, 1f), color, 0.3f);
                color  = Color.Lerp(palette.blackColor, Custom.HSL2RGB(0.63055557f, 0.54f, 0.5f), Mathf.Lerp(0.08f, 0.04f, palette.darkness));
            }
            for (int i = 0; i < sLeaser.sprites.Length; i++)
            {
                sLeaser.sprites[i].color = color;
            }
            if (MonklandSteamManager.isInGame)
            {
                sLeaser.sprites[11].color = Color.Lerp(MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf((this.player.abstractPhysicalObject as patch_AbstractPhysicalObject).owner)], Color.white, 0.3f);
                sLeaser.sprites[10].color = MonklandSteamManager.GameManager.playerColors[MonklandSteamManager.connectedPlayers.IndexOf((this.player.abstractPhysicalObject as patch_AbstractPhysicalObject).owner)];
                sLeaser.sprites[9].color  = MonklandSteamManager.GameManager.playerEyeColors[MonklandSteamManager.connectedPlayers.IndexOf((this.player.abstractPhysicalObject as patch_AbstractPhysicalObject).owner)];
            }
            else
            {
                sLeaser.sprites[11].color = Color.Lerp(PlayerGraphics.SlugcatColor(this.player.playerState.slugcatCharacter), Color.white, 0.3f);
                sLeaser.sprites[10].color = PlayerGraphics.SlugcatColor(this.player.playerState.slugcatCharacter);
                sLeaser.sprites[9].color  = color2;
            }
        }
示例#24
0
    void Start()
    {
        rb   = GetComponent <Rigidbody2D>();
        rend = GetComponent <SpriteRenderer>();

        Health = MaxHealth;

        scorer = FindObjectOfType <ScorePlayers>();

        if (ID == PlayerID.Left)
        {
            graphics = SelectorScript.instance.leftGraphics;
        }
        else if (ID == PlayerID.Right)
        {
            graphics = SelectorScript.instance.rightGraphics;
        }

        rend.sprite = graphics.FrontSprite;
    }
示例#25
0
    public override void LoadDataInternal()
    {
        if (playerData != null)
        {
            playerIcon.sprite   = PlayerGraphics.GetPlayerIcon(playerData);
            teleportIcon.sprite = PlayerGraphics.GetTeleportIcon(playerData);

            characterName.text = playerData.CharacterName;
            characterLvl.text  = "Lvl " + playerData.Level.ToString();

            if (characterSlotID == MainData.CurrentSaveData.CurrentSlotID)
            {
                SetActive();
            }
            else
            {
                SetInactive();
            }
        }
    }
示例#26
0
    public override void ApplyPalette(RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, RoomPalette palette)
    {
        float voidInEffect = 0f;

        if ((pGraphics.owner as patch_Player).voidEnergy)
        {
            voidInEffect = (1f - (pGraphics.owner as patch_Player).maxEnergy) / 1.2f;
        }
        Color color = Color.Lerp(PlayerGraphics.SlugcatColor((pGraphics.owner as patch_Player).playerState.slugcatCharacter), Color.white, voidInEffect);
        int   order = -tailSegment;
        float alpha = 1f;

        if ((pGraphics.owner as patch_Player).energy < (pGraphics.owner as patch_Player).maxEnergy && !(pGraphics.owner as patch_Player).bashing)
        {
            alpha = (pGraphics.owner as patch_Player).energy * Mathf.Abs((float)Math.Sin((double)((float)rCam.room.world.rainCycle.timer % 250f / 20.0375f + order)) / 2f);
        }
        else if ((pGraphics.owner as patch_Player).bashing)
        {
            alpha = 1f;
        }
        else
        {
            alpha = (pGraphics.owner as patch_Player).energy * Mathf.Abs((float)Math.Sin((double)((float)rCam.room.world.rainCycle.timer % 250f / 40.075f)) / 1.2f);
        }
        if ((pGraphics.owner as patch_Player).maxEnergy < 0.1)
        {
            alpha = 0f;
            sLeaser.sprites[startSprite].isVisible     = false;
            sLeaser.sprites[startSprite + 1].isVisible = false;
        }
        //pGraphics.owner.room.world.rainCycle.timer;
        sLeaser.sprites[startSprite].alpha     = alpha;
        sLeaser.sprites[startSprite + 1].alpha = alpha;

        sLeaser.sprites[startSprite].color     = Color.Lerp(color, Color.white, alpha); //palette.blackColor;
        sLeaser.sprites[startSprite + 1].color = Color.Lerp(color, Color.white, alpha); //palette.blackColor;
        base.ApplyPalette(sLeaser, rCam, palette);
    }
示例#27
0
 private void ApplyPaletteHook(On.PlayerGraphics.orig_ApplyPalette orig, PlayerGraphics self, RoomCamera.SpriteLeaser sLeaser, RoomCamera rCam, RoomPalette palette)
 {
     if (self.player.playerState.slugcatCharacter == PlayerManager.GetCustomPlayer("Electric").SlugcatIndex)
     {
         for (int i = 0; i < EVars.Count; i++)
         {
             if (EVars[i].ply == self.player)
             {
                 Color color  = PlayerGraphics.SlugcatColor(self.player.playerState.slugcatCharacter);
                 Color color2 = palette.blackColor;
                 if (self.malnourished > 0f)
                 {
                     float num = (!self.player.Malnourished) ? Mathf.Max(0f, self.malnourished - 0.005f) : self.malnourished;
                     color  = Color.Lerp(color, Color.gray, 0.4f * num);
                     color2 = Color.Lerp(color2, Color.Lerp(Color.white, palette.fogColor, 0.5f), 0.2f * num * num);
                 }
                 color  = EVars[i].ElectricBodyColor(EVars[i].chargedActive, EVars[i].chargedTimer, EVars[i].stunDelay);
                 color2 = palette.blackColor;
                 for (int s = 0; s < sLeaser.sprites.Length; s++)
                 {
                     sLeaser.sprites[s].color = color;
                 }
                 sLeaser.sprites[11].color = Color.Lerp(PlayerGraphics.SlugcatColor(self.player.playerState.slugcatCharacter), Color.white, 0.3f);
                 sLeaser.sprites[9].color  = color2;
                 sLeaser.sprites[12].color = EVars[i].AntennaBaseColor(EVars[i].chargedActive);
                 sLeaser.sprites[13].color = EVars[i].AntennaTipColor(EVars[i].chargedActive, EVars[i].receivingMessage);
                 if (EVars[i].receivingMessage && EVars[i].chargedActive)
                 {
                     sLeaser.sprites[9].color = EVars[i].AntennaTipColor(true, true);
                 }
             }
         }
     }
     else
     {
         orig.Invoke(self, sLeaser, rCam, palette);
     }
 }
示例#28
0
 // Use this for initialization
 protected override void Awake()
 {
     base.Awake ();
     motor = gameObject.GetComponent<PlayerMotor> ();
     input = gameObject.GetComponent<PlayerInput> ();
     collision = gameObject.GetComponent<PlayerCollision> ();
     graphics = gameObject.GetComponent<PlayerGraphics> ();
     orientation.OnNewOrientation = OnNewOrientation;
 }
示例#29
0
 void Awake()
 {
     graphics        = GetComponent <PlayerGraphics> ();
     punchController = GetComponent <PlayerPunchController> ();
 }
示例#30
0
 // Start is called before the first frame update
 void Start()
 {
     instance = this;
 }
示例#31
0
 public void Awake()
 {
     playerGraphics = GetComponent <PlayerGraphics>();
 }