# Server

## <mark style="color:green;">getPlayerData</mark>

### Usage

```lua
bridge.framework.getPlayerData(src)
```

* src: `number`

### Example

```lua
bridge.framework.getPlayerData(src)
```

* return: `object`
  * identifier: `string`
  * gender: `string`
  * name: `object`
    * first: `string`
    * last: `string`
    * full: `string`
  * job: `object`
    * name: `string`
    * label: `string`
    * onDuty: `boolean`
    * grade: `number`
    * gradeName: `string`
  * money: `object`
    * cash: `number`
    * bank: `number`

## <mark style="color:green;">getPlayerByIdentifier</mark>

### Usage

```lua
bridge.framework.getPlayerByIdentifier(identifier)
```

* identifier: `string`

### Example

```lua
bridge.framework.getPlayerByIdentifier(identifier)
```

* return: `number`

## <mark style="color:green;">addMoney</mark>

### Usage

```lua
bridge.framework.addMoney(src, type, amount)
```

* src: `number`
* type: `"cash"` or `"bank"`
* amount: `number`

### Example

```lua
bridge.framework.addMoney(src, "bank", 50000)
```

* return: `boolean`

## <mark style="color:green;">removeMoney</mark>

### Usage

```lua
bridge.framework.removeMoney(src, type, amount)
```

* src: `number`
* type: `"cash"` or `"bank"`
* amount: `number`

### Example

```lua
bridge.framework.removeMoney(src, "bank", 50000)
```

* return: `boolean`

## <mark style="color:green;">createUsableItem</mark>

### Usage

```lua
bridge.framework.createUsableItem(name, cb)
```

* name: `string`
* cb: `function`

### Example

```lua
bridge.framework.createUsableItem("water", function(src)
    print("Example Function")
end)
```

## <mark style="color:green;">registerCommand</mark>

### Usage

```lua
bridge.framework.registerCommand(name, permission, cb, data)
```

* name: `string`
* permission: `string`
* cb: `function`
* data(optional): `object`
  * help(optional): `string`
  * arguments(optional): `array`
    * name: `string`
    * help: `string`
    * optional: `boolean`

### Example

```lua
bridge.framework.registerCommand("test", "user", function(src, args)
    print("Example Command")
end)
```

```lua
bridge.framework.registerCommand("test", "god", function(src, args)
    print("src: " .. src)
    print("playerId: " .. args.playerId)
    print("fullname: " .. args.fullname)
end, {
    help = "Example Command Help",
    arguments = {
        {name = "playerId", help = "Provide Player Id", optional = false},
        {name = "fullname", help = "Provide Player Id Full Name", optional = true},
    },
})
```

## <mark style="color:green;">getAllJobs</mark>

### Usage

```lua
bridge.framework.getAllJobs()
```

### Example

```lua
bridge.framework.getAllJobs()
```

* return: `object`
  * jobName: `object`
    * name: `string`
    * label: `string`
    * grades: `array`
      * grade: `number`
      * name: `string`

## <mark style="color:green;">getJob</mark>

### Usage

```lua
bridge.framework.getJob(job)
```

* job: `string`

### Example

```lua
bridge.framework.getJob(job)
```

* return: `object`
  * name: `string`
  * label: `string`
  * grades: `array`
    * grade: `number`
    * name: `string`
