OnPlayerEditAttachedObject: Porovnání verzí
Skočit na navigaci
Skočit na vyhledávání
Bez shrnutí editace |
Bez shrnutí editace |
||
| Řádek 96: | Řádek 96: | ||
[[Category:Funkce]] | [[Category:Funkce]] | ||
[[Category:Pridane_0.3e]] | [[Category:Pridane_0.3e]] | ||
[[Category:Callbacky]] | |||
Verze z 1. 6. 2012, 15:49
Tato funkce byla přidána ve verzi 0.3e. Nedoporučuje se používat starší verze!
- Tento callback je vyvolán, když hráč ukončí úpravu objektu.
Parametry
(playerid, response, index, modelid, boneid, Float:fOffsetX, Float:fOffsetY, Float:fOffsetZ, Float:fRotX, Float:fRotY, Float:fRotZ, Float:fScaleX, Float:fScaleY, Float:fScaleZ)
- playerid
- ID hráče
- playerid
- response
- 0 pokud zruší (ESC) nebo, 1 pokud klikne na ikonu Uložit.
- response
- modelid
- Model připojené objektu, který byl upravován
- modelid
- boneid
- The bone připojeného objektu, který byl upravován
- boneid
- Float:fOffsetX/Y/Z
- Pozice X/Y/Z pro připojený objekt, který byl upravován
- Float:fOffsetX/Y/Z
- Float:fRotX/Y/Z
- Rotace X/Y/Z pro připojený objekt, který byl upravován
- Float:fRotX/Y/Z
- Float:fScaleX/Y/Z
- Velikost X/Y/Z pro připojený objekt, který byl upravován
- Float:fScaleX/Y/Z
- Tento CallBack nevrací žádnou hodnotu
enum attached_object_data
{
ao_model,
ao_bone,
Float:ao_x,
Float:ao_y,
Float:ao_z,
Float:ao_rx,
Float:ao_ry,
Float:ar_rz,
Float:as_sx,
Float:ao_sy,
Float:ao_sz
}
new ao[MAX_PLAYERS][MAX_PLAYER_ATTACHED_OBJECTS][attached_object_data];
//Tyto údaje by měly být uloženy ve výše uvedeném poli, když jsou připojeny objekty.
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(playeird, 0xFFFFFF00, "Připojený objekt byl uložen");
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(playeird, 0xFFFFFF00, "Připojený objekt nebyl uložen");
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;
}
Důležitá poznámka Editace by měla být zlikvidována, pokud odpověď byla 0(zrušeno). Musí být provedeno ukládání offsety atd. v poli před použitím EditAttachedObject
Autor: Lurk(Luděk)