/// <summary> /// Gets a string representation of this object. /// </summary> /// <returns>T string representation of this object.</returns> public override string ToString() { return("Enemy:" + " Type=" + EnemyType.ToString("x") + (Respawn ? "Respawns " : "") + " Palette=" + DifficultByteValue.ToString() + " Slot=" + SpriteSlot.ToString() + " ScreenPos=" + this.X.ToString() + "," + this.Y.ToString()); }
public static Sprite SpellSprite(this AIHeroClient hero, SpriteSlot spr) { var Notready = hero.IsOnCoolDown(spr.Slot) || !hero.Spellbook.GetSpell(spr.Slot).IsLearned; return(Notready ? spr.NotReadySprite : spr.ReadySprite); }
//Ich denke die Funktion wird aufgerufen, wenn das Tile sich selbst auf die Tilemap zeichnet public override void GetTileData(Vector3Int position, ITilemap tilemap, ref TileData tileData) { //Probably so that no exception is produced //Acid Tile has less than WallTile if (spriteSlots.Length < 9) { return; } int mask = (HasNeighbour(position + Vector3Int.up, tilemap) ? 1 : 0) + (HasNeighbour(position + Vector3Int.right, tilemap) ? 2 : 0) + (HasNeighbour(position + Vector3Int.down, tilemap) ? 4 : 0) + (HasNeighbour(position + Vector3Int.left, tilemap) ? 8 : 0); if (specialvals.Contains(mask)) { int tmpI = mask; tmpI += (HasNeighbour(position + Vector3Int.left + Vector3Int.up, tilemap) ? 100 : 0); tmpI += (HasNeighbour(position + Vector3Int.left + Vector3Int.down, tilemap) ? 5000 : 0); tmpI += (HasNeighbour(position + Vector3Int.right + Vector3Int.down, tilemap) ? 1000 : 0); tmpI += (HasNeighbour(position + Vector3Int.right + Vector3Int.up, tilemap) ? 3000 : 0); if (specialvalsCalc.Contains(tmpI)) { mask = tmpI; } } //ChangeYT //Standard if no sprites around SpriteSlot slot = spriteSlots[11]; switch (mask) { //YT New case 1: slot = spriteSlots[11]; break; case 4: slot = spriteSlots[1]; break; case 5: slot = spriteSlots[6]; break; case 3: slot = spriteSlots[10]; break; case 6: slot = spriteSlots[0]; break; case 7: slot = spriteSlots[5]; break; case 9: slot = spriteSlots[12]; break; //left and right case 10: slot = spriteSlots[6]; break; case 11: slot = spriteSlots[11]; break; case 12: slot = spriteSlots[2]; break; case 13: slot = spriteSlots[7]; break; case 14: slot = spriteSlots[1]; break; case 15: slot = spriteSlots[6]; break; case 115: slot = spriteSlots[9]; break; case 1015: slot = spriteSlots[3]; break; case 1115: slot = spriteSlots[4]; break; case 5015: slot = spriteSlots[4]; break; case 4115: slot = spriteSlots[4]; break; case 5115: slot = spriteSlots[7]; break; case 6015: slot = spriteSlots[6]; break; case 3115: slot = spriteSlots[6]; break; case 3013: slot = spriteSlots[8]; break; case 3113: slot = spriteSlots[8]; break; case 3007: slot = spriteSlots[9]; break; case 3015: slot = spriteSlots[6]; break; case 4002: slot = spriteSlots[5]; break; case 5014: slot = spriteSlots[2]; break; case 5108: slot = spriteSlots[7]; break; case 6100: slot = spriteSlots[8]; break; case 6115: slot = spriteSlots[8]; break; case 8115: slot = spriteSlots[3]; break; case 9015: slot = spriteSlots[9]; break; } //Slot kann bis zu vier Sprites vorhalten für Random Auswahl tileData.sprite = slot.sprites[0].sprite; tileData.flags = TileFlags.LockAll; //YT //Addition to Acid Brush tileData.colliderType = mask != 15 ? Tile.ColliderType.Grid : Tile.ColliderType.None; }