-
Posts
1,477 -
Joined
-
Last visited
Content Type
Profiles
Downloads
Forums
Store
Support
DOWNLOADS EXTRA
Services
Everything posted by IIIaKa
-
Unfortunately, there are even fewer countries supported there than on PayPal ;(
-
Hello, I would like to know if there are plans to add more withdrawal methods besides PayPal? Unfortunately, not everyone can create an account there.
-
@Razor I suggest replacing the current OnCupboardAuthorize, OnCupboardDeauthorize, OnCupboardClearList hooks with this: private void OnCupboardAuthorize(BuildingPrivlidge privilege, BasePlayer player) { if (Convert.ToBoolean(RaidableBases?.CallHook("EventTerritory", privilege.transform.position))) return; NextTick(() => { if (privilege != null && player != null && privilege.IsAuthed(player)) { if (!pcdData.tcData.ContainsKey(player.userID)) pcdData.tcData.Add(player.userID, new List<ulong>()); if (!pcdData.tcData[player.userID].Contains(privilege.net.ID.Value)) { pcdData.tcData[player.userID].Add(privilege.net.ID.Value); Interface.Oxide.CallHook("OnRandomRaidCupboardAuthorized", privilege.transform.position, player); } SaveData(); } }); } private void OnCupboardDeauthorize(BuildingPrivlidge privilege, BasePlayer player) { var pos = privilege.transform.position; var privID = privilege.net.ID.Value; NextTick(() => { if (player != null && pcdData.tcData.ContainsKey(player.userID) && (privilege == null || !privilege.IsAuthed(player))) { if (pcdData.tcData[player.userID].Contains(privID)) { pcdData.tcData[player.userID].Remove(privID); Interface.Oxide.CallHook("OnRandomRaidCupboardDeauthorized", pos, player); SaveData(); } } }); } private void OnCupboardClearList(BuildingPrivlidge privilege, BasePlayer player) { var pos = privilege.transform.position; var privID = privilege.net.ID.Value; NextTick(() => { foreach (var kvp in pcdData.tcData) { if (kvp.Value.Contains(privID) && !privilege.IsAuthed(kvp.Key)) { kvp.Value.Remove(privID); Interface.Oxide.CallHook("OnRandomRaidCupboardCleared", pos, kvp.Key); } } SaveData(); }); }
-
@Razor Is it possible to add another object hook, when attempting select players for a raid, to be able to prevent player to be raided?
-
Hello, in the next update (0.1.6), I have fixed a bug where players couldn't shoot down helicopters. Work with Random Raids (you will need to manually add 3 hooks). Helicopters that belong to the Random Raids plugin will not take damage from other players. Vehicles, experimentally disabled damage only from players for privatized TCs. There is a possibility of griefing, where players can aggro NPCs and hide behind other players' TCs, thus causing them to break.
-
@nivex 2. I probably didn't express myself correctly. These are very rare cases, but they can still happen. For example, your plugin is installed on the server, several bases are spawned, and the server admin decides to add my plugin. After loading the plugin, my plugin won't know about the already existing bases because the OnRaidableBaseStarted hook was triggered before my plugin was added to the server. Or, for example, an update for my plugin is released, and the server admin updates the plugin, resulting in my plugin again not knowing about the existing bases. 3. It's a pity that there is no programmatic way to implement this. 5. It's a pity, as the userID is initially stored as a ulong type and no additional calculations are required. 9. In my PvE plugin to prevent griefing, everything is privatized, and therefore, targeting of all traps is disabled. But for raid bases, I want to enable them only for raiders. I have to constantly check the position of these traps in the CanBeTargeted hooks, but if you add a skinID to them, it would allow me to avoid position checks in many cases (for traps not from raid bases). object CanBeTargeted(BasePlayer player, FlameTurret flameTurret) { if (player.userID.IsSteamId()) { if (TryGetRaidBase(flameTurret.transform.position, out var rbData) && rbData.CanInteractWithRaid(player)) return null; return false; } return null; } //If traps have a skin ID object CanBeTargeted(BasePlayer player, FlameTurret flameTurret) { if (player.userID.IsSteamId()) { if (flameTurret.skinID == _rbSkinID && TryGetRaidBase(flameTurret.transform.position, out var rbData) && rbData.CanInteractWithRaid(player)) return null; return false; } return null; } Thank you!
-
@nivex 2. The OnRaidableBaseStarted hook is triggered when a base appears, and my plugin is loaded. However, if a base appeared before my plugin was loaded, then my plugin will not handle OnRaidableBaseStarted. So, are there ways to get the list of bases? 3. I mean to do this programmly through a plugin. In my PVE plugin, there is a system of "privatization" to prevent griefing. Currently, when a player enters a free base, they are offered with clickable UI to buy the base. The purchase happens after deducting funds, and then using covalence.Server.Command($"rbevent setowner {playerID}");. The problem is that I can't determine if the base has been successfully assigned to the player or not. That's why I was asking about the hook in point 1. 5. Can’t we just add an overloaded hook with ulong type alongside? 6. I just saw that in your plugin, the UI updates the loot count when a container destroyed. If there's a way to pass the base position and loot amount through a hook, it would help avoid unnecessary calculations and be very convenient. Also, if possible, please add the loot amount to the OnRaidableBaseStarted hook. 8. I noticed that the base's despawnDateTime can change during time. Is there a hook for that as well? 9. Is it posible to set skinID for GunTrap, FlameTurret and SamSite?
-
I agree, for PvP servers this would be unnecessary. But I think it would be perfect for PvE. I have a PvE server, and there are super newbies playing there. And if this can be implemented, then this kind of 'hint' would be very useful for them.
-
@nivex Hi, are there any updates regarding this?
-
@nivex Hi, are there any updates regarding this?
-
@Razor Hello, I want to add compatibility with your plugin. However, I encountered the absence of an API and hooks. You only have two hooks: OnRandomRaidStart(string waveType, Vector3 pos) and RandomRaidEventEnd(Vector3 pos). Additionally, there is no information about NPCs, helis, or airdrops. I kindly ask you to add the following hooks for better convenience for plugins that will be compatible with your plugin: Interface.Oxide.CallHook("OnRandomRaidRaiderSpawned", location, theNewGuy, true);//line ~1406, true means npc is juggernaut Interface.Oxide.CallHook("OnRandomRaidRaiderSpawned", location, theNewGuy, false);//line ~1474 Interface.Oxide.CallHook("OnRandomRaidHeliSpawned", location, heli);//line ~4522 It would also be super convenient if you assigned skinID for your NPCs, helis, and airdrops, similar to how nivex does it in Raidable Bases using skinID = 14922524. theNewGuy.skinID = 123; heli.skinID = 123; Also, please add the hook OnRandomRaidOwnersUpdated, which will be called when the list of authorized users changes (OnCupboardAuthorize, OnCupboardDeauthorize, OnCupboardClearList), passing the parameter BuildingPrivlidge or HashSet<PlayerNameID>. Thank you in advance for your cooperation.
-
Hello, it would be great if the "Manage Purchases" section under "Plugins" only displayed the purchased plugins. And for the list of "Featured My File" had its own subsection.
-
Welcome to the ExtendedStats Plugin Discussion Section! Hello! This section is exclusively for discussing ExtendedStats plugin. Encountered Issues? If you're facing any difficulties with the plugin's functionality, feel free to create a topic in the Support section for assistance! Ideas and Suggestions? Have ideas to share or new features to suggest? Feel free to start a discussion by creating a topic in the Support section. Feel free to share your thoughts and experiences - together we can make our plugin even better!
- 4 comments
-
- #rust
- #reputation
- (and 26 more)
-
Hello. I noticed that not all Featured plugins are pinned. Currently, there's a limit of 15. I suggest that the remaining Featured plugins, which don't fit, be displayed every 5(for example) items. This way, the money spent on purchasing the Featured status will not be wasted for those whose plugins did not fit when content is loaded for potential buyers. Because I have to refresh the page 2-3 times to see my plugin. I don't think potential buyers will just refresh the main page 2-3 times. And if the number of featured plugins increases, then the chances of your plugin being seen will decrease, especially if you haven't updated your plugin in a while.