Unofficial site, not affiliated with modrinth.com.What is this?
Плагины/CombatGunSSS
Все версииCombatGunSSS 1.1.0

CombatGunSSS 1.1.0

Release2 мес. назад

Список изменений

[1.1.0] - 2026-04-10

Added

PlaceholderAPI Integration

  • New soft-depend on PlaceholderAPI. When the plugin is present, CombatGunSSS registers a %combatgun_*% expansion with 8 real-time placeholders:
PlaceholderExampleDescription
%combatgun_gun_name%AK47Display name of held gun
%combatgun_gun_id%ak47Internal ID of held gun
%combatgun_gun_rarity%epicRarity of held gun
%combatgun_ammo%24Current magazine ammo
%combatgun_ammo_max%30Magazine capacity
%combatgun_ammo_reserve%90Reserve ammo in inventory
%combatgun_is_reloading%trueWhether player is reloading
%combatgun_is_gun%trueWhether held item is a gun
  • All placeholders return safe empty-string or 0 defaults when the player holds no gun.
  • Compatible with scoreboard plugins (AdvancedHud, TAB, AnimatedScoreboard, etc).

Vault Economy / Shop

  • New soft-depend on Vault. When an economy provider is found and combatgun.shop.enabled: true, players can purchase weapons via /gun buy <gun_id>.
  • Prices are configured per gun in config.yml under combatgun.shop.guns. All 45 built-in weapons have default prices included in the generated config.
  • Admin shortcut: /gun buy <gun_id> free gives the weapon at no cost (requires combatgun.admin).
  • Clear failure messages for insufficient funds, missing price entry, and unavailable economy.
  • /gun buy added to tab completion and /gun help output.
  • VaultHook is a standalone class — VaultHook.buyGun() can be called from third-party plugins that depend on CombatGunSSS.

WorldGuard Region Protection

  • New soft-depend on WorldGuard. When present, a custom flag gun-shooting is registered during onLoad() (before WorldGuard reads region data).
  • Shooting is blocked in any region where gun-shooting is set to deny:
    /rg flag <region> gun-shooting deny    # block all gun use
    /rg flag <region> gun-shooting allow   # explicitly allow
    
  • Falls back to WorldGuard's built-in PVP flag when gun-shooting is not configured on a region.
  • Applies to all ranged shots and is checked inside isAllowed() — same path as world and permission checks. Players receive an action-bar message: ⛔ Guns are disabled in this region.
  • Fails open on unexpected errors to avoid breaking gameplay.

Anti-Cheat Exemptions (Vulcan & Matrix)

  • New soft-depend detection for Vulcan and Matrix anti-cheat plugins.
  • When either plugin is detected, AntiCheatHook.exempt(player) is called immediately before applyRecoil() — preventing false-positive flags on the camera pitch/yaw changes that recoil applies.
  • Exemption is automatically removed after combatgun.anticheat.exempt_ticks ticks (default 3).
  • Both exemption and un-exemption calls are fully wrapped in try-catch — an API version mismatch in either anti-cheat never crashes CombatGunSSS.

Central HookManager

  • New HookManager class owns all hook instances (PlaceholderHook, VaultHook, WorldGuardHook, AntiCheatHook).
  • Initialized once in onEnable(). Each hook initializes independently — a failure in one never prevents others from loading.
  • Accessible via plugin.getHookManager() for third-party plugins that want to query hook state.
  • Startup log now prints Shop: ON (Vault) and WGuard: ON lines based on detected integrations.

Changed

  • pom.xml — added provided dependencies for PlaceholderAPI 2.11.6, VaultAPI 1.7, and WorldGuard 7.0.9. All three are compile-time only (never shaded into the jar).
  • plugin.yml — version bumped to 1.1.0; added softdepend list: [PlaceholderAPI, Vault, WorldGuard, Vulcan, Matrix]; updated command description to include buy; updated plugin description.
  • config.yml — added combatgun.shop section with enabled, currency_symbol, and per-gun price list for all 45 built-in weapons; added combatgun.anticheat.exempt_ticks key; added inline documentation comments for WorldGuard.
  • GunCommand — added buy to SUB_COMMANDS list, switch statement, tab completion, and help text; added handleBuy() method.
  • GunListener.isAllowed() — added WorldGuard region check between world check and permission check.
  • GunListener.applyRecoil() — calls antiCheatHook.exempt(player) before applying camera rotation.
  • CombatGunSSSPlugin.onLoad() — added WorldGuardHook.registerFlags() call (required before WorldGuard reads region data).
  • CombatGunSSSPlugin.onEnable() — initializes HookManager after all managers are ready; startup log prints hook status lines.

Метаданные

Канал релиза

Release

Номер версии

1.1.0

Загрузчики

Paper
Purpur

Версии игры

1.21–1.21.11

Загрузок

36

Дата публикации

2 мес. назад

Загрузил

ID версии

Главная