public void UpdateTreeText() { if (TreeText != null && API.Shared.DoesEntityExist(TreeText)) { API.Shared.DeleteEntity(TreeText); } if (TreeMarker == null) { TreeMarker = new MarkerZone(TreePos.Add(new Vector3(1, 0, -0.5)), TreeRot, 0); TreeMarker.MarkerType = 1; TreeMarker.MarkerColor[2] = 0; TreeMarker.MarkerScale = new Vector3(1, 1, 1); TreeMarker.UseColZone = false; TreeMarker.UseBlip = false; TreeMarker.UseText = false; TreeMarker.Create(); } switch (Stage) { case Stages.Processing: TreeText = API.Shared.CreateTextLabel("~g~Hit the tree to process it. ~n~" + ProcessPercentage + "%", TreePos, 10f, 1f, 1, new GTANetworkAPI.Color(1, 1, 1), true); TreeMarker.Location = TreePos; TreeMarker.Refresh(); API.Shared.AttachEntityToEntity(TreeText, TreeObj, "0", new Vector3(1, 1, 1.5), new Vector3()); API.Shared.AttachEntityToEntity(TreeMarker.Marker, TreeObj, "0", new Vector3(1, 0, 1.5), new Vector3(-90, 0, 0)); break; case Stages.Cutting: TreeText = API.Shared.CreateTextLabel("~g~" + CutPercentage + "% Cut.~n~Tree", TreePos, 10f, 1f, 1, new GTANetworkAPI.Color(1, 1, 1), true); TreeMarker.Location = TreePos; TreeMarker.Refresh(); API.Shared.AttachEntityToEntity(TreeText, TreeObj, "0", new Vector3(1, 0, 1), new Vector3()); API.Shared.AttachEntityToEntity(TreeMarker.Marker, TreeObj, "0", new Vector3(1, 0, 0), new Vector3()); break; case Stages.Waiting: TreeText = API.Shared.CreateTextLabel("~g~Waiting to be picked, use /pickupwood with a Flatbed.", TreePos, 10f, 1f, 1, new GTANetworkAPI.Color(1, 1, 1), true); TreeMarker.Location = TreePos; TreeMarker.Refresh(); API.Shared.AttachEntityToEntity(TreeText, TreeObj, "0", new Vector3(1, 0, 1), new Vector3()); API.Shared.AttachEntityToEntity(TreeMarker.Marker, TreeObj, "0", new Vector3(1, 0, 0), new Vector3()); break; default: TreeText = null; TreeMarker.Destroy(); break; } }
public void Delete() { if (API.Shared.DoesEntityExist(TreeObj)) { API.Shared.DeleteEntity(TreeObj); } if (API.Shared.DoesEntityExist(TreeText)) { API.Shared.DeleteEntity(TreeText); } TreeMarker.Destroy(); var filter = MongoDB.Driver.Builders <Tree> .Filter.Eq("_id", Id); DatabaseManager.TreesTable.DeleteOne(filter); Trees.Remove(this); }