} // end of BaseMouseEditTool Update() /// <summary> /// Override this to provide a place to initialize /// anything that needs to be done on a per-use basis. /// </summary> public virtual void OnActivate() { // Get references. We can't do this in the // c'tor since not all of these exist yet. inGame = Boku.InGame.inGame; shared = inGame.shared; materialPicker = inGame.mouseEditUpdateObj.ToolBox.MaterialPicker; waterPicker = inGame.mouseEditUpdateObj.ToolBox.WaterPicker; brushPicker = inGame.mouseEditUpdateObj.ToolBox.BrushPicker; starting = true; StretchPhase = Phase.Open; shared.editBrushIndex = prevBrushIndex; shared.editBrushStart = shared.editBrushPosition; //HelpOverlay.Push(helpOverlayID); inGame.Cursor3D.Rep = Cursor3D.Visual.Pointy; inGame.Cursor3D.DiffuseColor = Vector4.One; terrainSpeed = Common.Xml.XmlOptionsData.TerrainSpeed; // just cache this. isInAction = false; }
public override void Activate() { if (state != States.Active) { pendingState = States.Active; BokuGame.objectListDirty = true; Editor editor = InGame.inGame.Editor; if (editor.Active) { HelpOverlay.Push(@"PieSelectorProgrammingNoSelection"); } else { HelpOverlay.Push(@"PieSelectorAddItemNoSelection"); } if (SelectWater || SetWater) { WaterPicker waterPicker = InGame.inGame.shared.ToolBox.WaterPicker; holdOnGet = waterPicker.OnGetType; holdOnSet = waterPicker.OnSetType; holdOnPick = waterPicker.OnPickType; waterPicker.OnGetType = OnGetWater; waterPicker.OnSetType = OnSetWater; waterPicker.OnPickType = OnPickWater; typePicker = waterPicker; if (SetWater) { lastWaterIndex = RootData.SetWaterTypeIndex; } else { lastWaterIndex = RootData.WaterType; } if (lastWaterIndex < 0) { lastWaterIndex = Water.CurrentType; } } else { MaterialPicker matPicker = InGame.inGame.shared.ToolBox.MaterialPicker; holdOnGet = matPicker.OnGetType; holdOnSet = matPicker.OnSetType; holdOnPick = matPicker.OnPickType; matPicker.OnGetType = OnGetTerrain; matPicker.OnSetType = OnSetTerrain; matPicker.OnPickType = OnPickTerrain; matPicker.UseAltOverlay = true; typePicker = matPicker; ushort rootDataMatIdx = (ushort)RootData.MaterialType; if (TerrainMaterial.IsValid(rootDataMatIdx, false, false)) { lastTerrainIndex = rootDataMatIdx; } else if (!TerrainMaterial.IsValid(lastTerrainIndex, false, false)) { lastTerrainIndex = Terrain.CurrentMaterialIndex; } } typePicker.Active = true; typePicker.Hidden = false; } }