MultiplierService

Manages price multipliers for different scenarios.

bShop Multiplier API

The bShop plugin now includes a comprehensive multiplier system that allows both permission-based and temporary player-specific multipliers.

Features

  • Permission-based Multipliers: Configured in config.yml and applied based on player permissions

  • Temporary Multipliers: Can be given/removed via commands or API calls

  • API Integration: Full API support for external plugins

  • Admin Commands: Built-in commands for multiplier management

Configuration

Permission-based Multipliers

Configure in config.yml:

multipliers:
  enabled: true
  max_multiplier: 5.0
  stack_multipliers: false
  permission_multipliers:
    bshop.multiplier.1.5: 0.5
    bshop.multiplier.2.0: 1.0
    bshop.multiplier.3.0: 2.0
  • enabled: Enable/disable the multiplier system

  • max_multiplier: Maximum allowed multiplier value

  • stack_multipliers: If true, multipliers stack additively; if false, only highest applies

  • permission_multipliers: Map of permission to multiplier bonus

Admin Commands

Give Multiplier

Gives a temporary multiplier to a player.

Example:

Remove Multiplier

Removes a temporary multiplier from a player.

Example:

Check Multiplier

Shows detailed multiplier information for a player.

Example:

List Multipliers

Lists all active temporary multipliers.

Clear Multipliers

Removes all temporary multipliers from all players.

API Usage

Getting the API

Basic Multiplier Operations

Temporary Multiplier Management

System Information

Integration Example

Here's a complete example of how to integrate multiplier functionality into your plugin:

Permissions

  • bshop.admin.multiplier.give - Give temporary multipliers

  • bshop.admin.multiplier.remove - Remove temporary multipliers

  • bshop.admin.multiplier.list - List all temporary multipliers

  • bshop.admin.multiplier.clear - Clear all temporary multipliers

Notes

  • Temporary multipliers take precedence over permission-based multipliers

  • Multipliers are applied to sell prices only

  • Temporary multipliers are not persistent (reset on server restart)

  • The maximum multiplier value is enforced by the max_multiplier setting

  • All multiplier operations are thread-safe

Last updated