public void BindBoatToBoatWidget(BoatWidget widget) { // Setup status methods widget.stations[(int)BoatWidget.StationNames.rudder].GetStationStatus = steering.GetRudderStatus; widget.stations[(int)BoatWidget.StationNames.helm].GetStationStatus = GetHelmStatus; widget.stations[(int)BoatWidget.StationNames.sail].GetStationStatus = sail.GetSailStatus; widget.stations[(int)BoatWidget.StationNames.lantern].GetStationStatus = lantern.GetLanternStatus; widget.stations[(int)BoatWidget.StationNames.tend].GetStationStatus = captain.GetCaptainStatus; boatWidget = widget; widget.boat = this; captain.anim = widget.GetComponentInChildren <Animator>(); captain.img = captain.anim.gameObject.GetComponent <Image>(); captain.boatWidget = widget; damageManager.boatWidget = widget; damageManager.SetupDamageActions(); if (startCrashed) { widget.doNotUpdateFirstDisrepairOrDisplayMessage = true; widget.stations[(int)BoatWidget.StationNames.rudder].HideSelf(); widget.stations[(int)BoatWidget.StationNames.sail].HideSelf(); widget.stations[(int)BoatWidget.StationNames.lantern].HideSelf(); widget.CaptainAsleep(); captain.Sleep(silently: true); sail.OpenClose(false, silently: true); widget.LanternExtinguished(); lantern.Extinguish(silently: true); widget.doNotUpdateFirstDisrepairOrDisplayMessage = false; } }