---
title: "SetPlayerSpecialAction | open.mp"
description: "设置玩家执行特殊动作。"
canonical: https://omp.itsneufox.com/zh-CN/docs/scripting/functions/SetPlayerSpecialAction
language: zh-CN
---

# SetPlayerSpecialAction

## 描述

设置玩家执行特殊动作。

| 参数 | 说明 |
| --- | --- |
| playerid | 要执行特殊动作的玩家 ID |
| SPECIAL\_ACTION:actionid | 要执行的[特殊动作类型](https://omp.itsneufox.com/zh-CN/docs/scripting/resources/specialactions) |

## 返回值

**true** - 函数执行成功

**false** - 函数执行失败（玩家未连接）

## 示例

```c
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp(cmdtext, "/handsup", true) == 0)
    {
        SetPlayerSpecialAction(playerid, SPECIAL_ACTION_HANDSUP);
        return 1;
    }
    if (strcmp(cmdtext, "/drink", true) == 0)
    {
        SetPlayerSpecialAction(playerid, SPECIAL_ACTION_DRINK_WINE);
        return 1;
    }
    return 0;
}
```

## 重要说明

注意

通过设置特殊动作类型为`SPECIAL_ACTION_NONE`（无动作）来移除喷气背包时，喷射音效会持续到玩家死亡。解决方法是对玩家应用随机动画即可正确移除喷气背包。

## 相关函数

-   [GetPlayerSpecialAction](https://omp.itsneufox.com/zh-CN/docs/scripting/functions/GetPlayerSpecialAction): 获取玩家当前特殊动作
-   [ApplyAnimation](https://omp.itsneufox.com/zh-CN/docs/scripting/functions/ApplyAnimation): 应用动画到玩家

## 相关资源

-   [特殊动作 ID 列表](https://omp.itsneufox.com/zh-CN/docs/scripting/resources/specialactions)
