void Start() { animator = gameObject.GetComponent <Animator>(); boxColl = gameObject.GetComponent <BoxCollider2D>(); registerTile = gameObject.GetComponent <RegisterTile>(); if (!usingAnimator) { foreach (Transform child in transform) { switch (child.gameObject.name) { case "overlay_Lights": overlay_Lights = child.gameObject.GetComponent <SpriteRenderer>(); break; case "overlay_Glass": overlay_Glass = child.gameObject.GetComponent <SpriteRenderer>(); break; case "doorbase": doorbase = child.gameObject.GetComponent <SpriteRenderer>(); break; } } } sprites = SpriteManager.DoorSprites[doorType.ToString()]; overlaySprites = SpriteManager.DoorSprites["overlays"]; }
public override string ToString() { StringBuilder sb = new StringBuilder(); sb.AppendLine(base.ToString()); sb.AppendLine("Color : " + Colors.ToString()); sb.AppendLine("Doors: " + DoorType.ToString()); return(sb.ToString()); }
private void DisassmItem(ItemSeeker seeker) { result.AppendLine(); switch (seeker.ItemType) { case ItemTypeIndex.Nothing: throw new ItemDisassmException("Encountered an unexpected item type when disassembling an item."); case ItemTypeIndex.Enemy: // byte: Enemy code and sprite slot WriteLine(ByteDirective(seeker.ItemTypeByte), "Enemy, sprite slot = " + seeker.SpriteSlot.ToString()); // byte: hard flag (0x80), enemy type WriteLine(ByteDirective(seeker.SubTypeByte), "Enemy type = " + seeker.EnemyTypeIndex + (seeker.EnemyIsHard ? ", hard enemy" : "")); // Byte: screen position WriteLine(ByteDirective(seeker.ScreenPosition.Value), "Screen X = " + seeker.ScreenPosition.X.ToString() + " Y = " + seeker.ScreenPosition.Y.ToString()); break; case ItemTypeIndex.PowerUp: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Power Up"); // byte: Item type WriteLine(ByteDirective(seeker.SubTypeByte), "Type = " + seeker.PowerUpName); // Byte: screen position WriteLine(ByteDirective(seeker.ScreenPosition.Value), "Screen X = " + seeker.ScreenPosition.X.ToString() + " Y = " + seeker.ScreenPosition.Y.ToString()); break; case ItemTypeIndex.Mella: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Mella"); break; case ItemTypeIndex.Elevator: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Elevator"); // byte: Item type WriteLine(ByteDirective(seeker.SubTypeByte), "Type = " + seeker.Destination.ToString()); break; case ItemTypeIndex.Turret: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Turret, type = " + seeker.SpriteSlot.ToString()); // Byte: screen position WriteLine(ByteDirective(seeker.ScreenPosition.Value), "Screen X = " + seeker.ScreenPosition.X.ToString() + " Y = " + seeker.ScreenPosition.Y.ToString()); break; case ItemTypeIndex.MotherBrain: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Mother Brain"); break; case ItemTypeIndex.Zebetite: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Zebetite, index = " + seeker.SpriteSlot.ToString()); break; case ItemTypeIndex.Rinkas: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Rinka " + seeker.SpriteSlot.ToString()); break; case ItemTypeIndex.Door: // byte: Door WriteLine(ByteDirective(seeker.ItemTypeByte), "Doop"); // byte: Door type var doorType = seeker.SubTypeByte; DoorSide side = (DoorSide)(doorType & 0xF0); DoorType type = (DoorType)(doorType & 0x0F); WriteLine(ByteDirective(seeker.SubTypeByte), "Door: " + side.ToString() + " " + type.ToString()); break; case ItemTypeIndex.PalSwap: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Palette Swap"); break; case ItemTypeIndex.Unused_b: case ItemTypeIndex.Unused_c: case ItemTypeIndex.Unused_d: case ItemTypeIndex.Unused_e: case ItemTypeIndex.Unused_f: // byte: Item code WriteLine(ByteDirective(seeker.ItemTypeByte), "Invalid Item Type!"); break; default: throw new ItemDisassmException("Unexpected item type in DisassmItem"); break; } }