警告
此回调是在SA-MP 0.3e中添加的,在早期版本中不起作用!
描述
当玩家结束附加对象编辑模式时调用此回调。
| 姓名 |
描述 |
| playerid |
结束编辑模式的玩家ID |
| response |
如果取消 (ESC),则为 0;如果单击保存图标,则为 1 |
| index |
附加对象的索引(0-9) |
| modelid |
已编辑的附加对象的模型 |
| boneid |
已编辑的附加对象的骨骼 |
| Float:fOffsetX |
已编辑的附加对象的 X 偏移 |
| Float:fOffsetY |
已编辑的附加对象的 Y 偏移量 |
| Float:fOffsetZ |
已编辑的附加对象的 Z 偏移 |
| Float:fRotX |
已编辑的附加对象的 X 旋转 |
| Float:fRotY |
已编辑的附加对象的 Y 旋转 |
| Float:fRotZ |
已编辑的附加对象的 Z 旋转 |
| Float:fScaleX |
已编辑的附加对象的 X 比例 |
| Float:fScaleY |
已编辑的附加对象的 Y 比例 |
| Float:fScaleZ |
已编辑的附加对象的 Z 比例 |
返回
1 - 将阻止其他脚本接收此回调。
0 - 表示此回调将传递给下一个脚本。
它总是在过滤器脚本中首先被调用。
例子
enum attached_object_data{ Float:ao_x, Float:ao_y, Float:ao_z, Float:ao_rx, Float:ao_ry, Float:ao_rz, Float:ao_sx, Float:ao_sy, Float:ao_sz}new ao[MAX_PLAYERS][MAX_PLAYER_ATTACHED_OBJECTS][attached_object_data];// The data should be stored in the above array when attached objects are attached.public OnPlayerEditAttachedObject(playerid, response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ){ if (response) { SendClientMessage(playerid, COLOR_GREEN, "Attached object edition saved."); ao[playerid][index][ao_x] = fOffsetX; ao[playerid][index][ao_y] = fOffsetY; ao[playerid][index][ao_z] = fOffsetZ; ao[playerid][index][ao_rx] = fRotX; ao[playerid][index][ao_ry] = fRotY; ao[playerid][index][ao_rz] = fRotZ; ao[playerid][index][ao_sx] = fScaleX; ao[playerid][index][ao_sy] = fScaleY; ao[playerid][index][ao_sz] = fScaleZ; } else { SendClientMessage(playerid, COLOR_RED, "Attached object edition not saved."); new i = index; SetPlayerAttachedObject(playerid, index, modelid, boneid, ao[playerid][i][ao_x], ao[playerid][i][ao_y], ao[playerid][i][ao_z], ao[playerid][i][ao_rx], ao[playerid][i][ao_ry], ao[playerid][i][ao_rz], ao[playerid][i][ao_sx], ao[playerid][i][ao_sy], ao[playerid][i][ao_sz]); } return 1;}
笔记
警告
如果响应为“0”(已取消),则应丢弃版本。这必须通过在使用 EditAttachedObject 之前将偏移量等存储在数组中来完成。