Jump to content

dFxGainwarD

Member
  • Posts

    19
  • Joined

  • Last visited

Everything posted by dFxGainwarD

  1. dFxGainwarD

    Small fix

    Fix: Replace: if (showForOwners && tc != null && tc.IsAuthed(basePlayer) && tc.IsProtected) { if (tc.HasFreeProtection) { PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_STATUS, poptime); SetProtectionStatusTextPreference(basePlayer, tc, popup); return true; } else if (!popup) { var duration = (int)Math.Floor(tc.HoursOfProtection * 3600); PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_STATUS, popup ? poptime : duration); SetProtectionStatusTextPreference(basePlayer, tc, popup); return duration > 0; } else { PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_VISITOR, poptime); PLUGIN.SimpleStatus.CallHook("SetStatusText", basePlayer.UserId(), ID_VISITOR, $"{tc.CurrentProtectionPercent}%"); return true; } } to: if (showForOwners && tc != null && tc.IsAuthed(basePlayer) && tc.IsProtected) { if (tc.HasFreeProtection) { PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_VISITOR, 0); PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_STATUS, poptime); SetProtectionStatusTextPreference(basePlayer, tc, popup); return true; } else if (!popup) { var duration = (int)Math.Floor(tc.HoursOfProtection * 3600); PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_VISITOR, 0); PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_STATUS, popup ? poptime : duration); SetProtectionStatusTextPreference(basePlayer, tc, popup); return duration > 0; } else { PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_STATUS, 0); PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_VISITOR, poptime); PLUGIN.SimpleStatus.CallHook("SetStatusText", basePlayer.UserId(), ID_VISITOR, $"{tc.CurrentProtectionPercent}%"); return true; } } Replace: else if (showForNonOwners && tc != null && !tc.IsAuthed(basePlayer) && tc.IsProtected) { PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_VISITOR, poptime); PLUGIN.SimpleStatus.CallHook("SetStatusText", basePlayer.UserId(), ID_VISITOR, $"{tc.CurrentProtectionPercent}%"); return true; } to: else if (showForNonOwners && tc != null && !tc.IsAuthed(basePlayer) && tc.IsProtected) { PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_STATUS, 0); PLUGIN.SimpleStatus.CallHook("SetStatus", basePlayer.UserId(), ID_VISITOR, poptime); PLUGIN.SimpleStatus.CallHook("SetStatusText", basePlayer.UserId(), ID_VISITOR, $"{tc.CurrentProtectionPercent}%"); return true; } Add: public static HashSet<ulong> PlayersViewingOverlay = new HashSet<ulong>(); after: public static HashSet<ulong> PlayersViewingInfoPanel = new HashSet<ulong>(); Replace: [Command("tc.info.close")] private void TcInfoClose(IPlayer player, string command, string[] args) { var basePlayer = player.Object as BasePlayer; if (IsNull(basePlayer)) return; CloseInfoPanel(basePlayer); } to: [Command("tc.info.close")] private void TcInfoClose(IPlayer player, string command, string[] args) { var basePlayer = player.Object as BasePlayer; if (IsNull(basePlayer)) return; PlayersViewingInfoPanel.Remove(basePlayer.userID); CloseInfoPanel(basePlayer); } Replace: private void ShowInfoPanel(BasePlayer basePlayer, ProtectedEntity tc, int page = 0) { var container = new CuiElementContainer(); to: private void ShowInfoPanel(BasePlayer basePlayer, ProtectedEntity tc, int page = 0) { PlayersViewingInfoPanel.Add(basePlayer.userID); PlayersViewingOverlay.Remove(basePlayer.UserId()); var container = new CuiElementContainer(); Replace: private void ShowProtectionStatusOverlayTabs(BasePlayer basePlayer, ProtectedEntity tc, int page = 0) { CuiElementContainer container = new CuiElementContainer(); to: private void ShowProtectionStatusOverlayTabs(BasePlayer basePlayer, ProtectedEntity tc, int page = 0) { if (PlayersViewingInfoPanel.Contains(basePlayer.userID)) return; CuiElementContainer container = new CuiElementContainer(); Replace: private void ShowProtectionStatusOverlay(BasePlayer basePlayer, ProtectedEntity tc) { CuiElementContainer container = new CuiElementContainer(); to: private void ShowProtectionStatusOverlay(BasePlayer basePlayer, ProtectedEntity tc) { if (PlayersViewingInfoPanel.Contains(basePlayer.userID)) return; CuiElementContainer container = new CuiElementContainer();
  2. dFxGainwarD

    Some bugs

    Hi, I found two issues with BattlePassReborn First, in the medium missions section, 4 missions are being displayed instead of 3, and the extra mission goes outside the rectangle/UI container, as shown in the screenshot. Second, item images are not loading properly. The custom item images do not appear at all in the Battle Pass UI. Could you please check these issues? Thanks
  3. When i try to update the plugin from 2.3.22 to 2.4.x version i recieve a error on UI update: [Shop] Config update detected! Updating config values... [Shop] Config update completed! [Shop] Loading UI Data exception: Newtonsoft.Json.JsonSerializationException: Could not find member 'AnchorMin' on object of type 'UiElement'. Path '['Full Screen UI']['Select Currency Settings'].Background.AnchorMin', line 17, position 20. at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00267] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0015c] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) [0x00061] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00267] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0015c] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) [0x00061] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00267] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0015c] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.SetPropertyValue (Newtonsoft.Json.Serialization.JsonProperty property, Newtonsoft.Json.JsonConverter propertyConverter, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerProperty, Newtonsoft.Json.JsonReader reader, System.Object target) [0x00061] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.PopulateObject (System.Object newObject, Newtonsoft.Json.JsonReader reader, Newtonsoft.Json.Serialization.JsonObjectContract contract, Newtonsoft.Json.Serialization.JsonProperty member, System.String id) [0x00267] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateObject (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0015c] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateValueInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType, Newtonsoft.Json.Serialization.JsonContract contract, Newtonsoft.Json.Serialization.JsonProperty member, Newtonsoft.Json.Serialization.JsonContainerContract containerContract, Newtonsoft.Json.Serialization.JsonProperty containerMember, System.Object existingValue) [0x0006d] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType, System.Boolean checkAdditionalContent) [0x000d9] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.JsonSerializer.DeserializeInternal (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00053] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.JsonSerializer.Deserialize (Newtonsoft.Json.JsonReader reader, System.Type objectType) [0x00000] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.JsonConvert.DeserializeObject (System.String value, System.Type type, Newtonsoft.Json.JsonSerializerSettings settings) [0x0002d] in <271c58b7a8684db5a2c92be17a81f252>:0 at Newtonsoft.Json.JsonConvert.DeserializeObject[T] (System.String value, Newtonsoft.Json.JsonSerializerSettings settings) [0x00000] in <271c58b7a8684db5a2c92be17a81f252>:0 at Oxide.Plugins.Shop.ReadOnlyDataObject[T] (System.String name) [0x0003f] in :0 at Oxide.Plugins.Shop.LoadTemplate () [0x00011] in :0 [Shop] No template is installed in the plugin. To install the plugin, run the command /shop.install. You must have the 'shop.admin' permission to execute this command. Loaded plugin Shop v2.4.14 by Mevent I have the old style UI with color modifications
  4. dFxGainwarD

    FP update problem

    After last update, the plugin can not compile 66 BuildTools - Failed to compile: Argument 2: cannot convert from 'EncryptedValue' to 'BasePlayer' | Line: 2767, Pos: 63
  5. Hello I suggest to add an option to disable Advanced Status functionalities in config, also a command to toggle the status per player This is usefull if you have Advanced Status and you do not want to enable status for this plugin
  6. dFxGainwarD

    Small fix

    Hi, I’ve found a few issues while testing Raid Protection: UI overlap - If the Raid Protection UI stays open for a while, the TC menu overlaps it. Duplicate SimpleStatus entries - After TC auth - unauth, two statuses can appear: - Raid Protection (% protection) - Raid Protection Upkeep (owner upkeep time) It seems SimpleStatus isn’t refreshed properly on auth/unauth. Suggestion: Refresh/update SimpleStatus on TC auth/unauth hook. If Always Show For Owners or Always Show For Non Owners is enabled, it should bypass Show When Holding Hammer and Show When Attacking. Also, I made a scrap balance icon in case you’d like to use it: https://i.ibb.co/Z1tLBF6W/scraps.png Just sharing feedback to help improve stability and UX
  7. dFxGainwarD

    Sleepong status show

    The status is still displayed when I sleep in the game, including after I die, the rest of the huds disappear, but the status remains
  8. dFxGainwarD

    Sleepong status show

    Can you make the status not show when you sleep? The statuses in the game are not visible when you sleep
  9. Does Battlepass progress reset when the server is wiped? I would like the progress to be reset at every wipe.
    Nice plugin if you want to export all your stats on your server.
  10. Hello. I suggest to add permission to refund materials for VIP on upgrade/remove. I would also suggest to fix the plugin GUI that overlays the map and other menus from game.

About Us

Codefling is the largest marketplace for plugins, maps, tools, and more, making it easy for customers to discover new content and for creators to monetize their work.

Downloads
2.5m
Total downloads
Customers
11.2k
Customers served
Files Sold
160.5k
Total sales
Payments
3.5m
Processed total
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.