Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Bonjour,
je suis en train de faire un systиme de /valise et /retirervalise mais j'ai des erreurs.
J'ai cherchй dans des
vieux sujets mais je ne trouve rien de concluant.
On m'a dit de mettre "+3" pour que ce soit dans la main du joueur.
La ligne 568 est celle du Create Object.
Merci !
Code:
if(strcmp(cmdtext, "/valise", true) == 0)
{
new valise[MAX_PLAYERS];
valise[playerid] = CreateObject(1210, 0.0, 0.0, +3, 0.0, 0.0, 0.0);
AttachObjectToPlayer(valise[playerid], playerid, x, y, z, rx, ry, rz);
}
if(strcmp("/retirervalise", cmdtext, true) == 0)
{
DestroyObject(valise[playerid]);
return 1;
}
Re : Problиme CreateObject en commande -
Julien Sirasor - 29.06.2014
PHP Code:
if(strcmp("/valise", cmdtext, true) == 0)
{
new valise[MAX_PLAYERS];
valise[playerid] = CreateObject(idvalise, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
AttachObjectToPlayer(valise[playerid], playerid, x, y, z, rx, ry, rz);
}
if(strcmp("/retirervalise", cmdtext, true) == 0)
{
DestroyObject(valise[playerid]);
}
Re : Problиme CreateObject en commande -
tysanio - 29.06.2014
Un createobjet sur une personne heuuuu nope
cest comme plutфt sa
PHP Code:
SetPlayerAttachedObject(playerid, 8,3026, 1 ,-0.13000, -0.08, 0.000000, 2.459999, 0, -3.100000, 1, 1, 1);
Re: Problиme CreateObject en commande -
S4t3K - 29.06.2014
Si Tysanio. Mais SetPlayerAttachedObject est plus adaptйe а son problиme.
Re : Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Quote:
Originally Posted by Julien Sirasor
PHP Code:
if(strcmp("/valise", cmdtext, true) == 0)
{
new valise[MAX_PLAYERS];
valise[playerid] = CreateObject(idvalise, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
AttachObjectToPlayer(valise[playerid], playerid, x, y, z, rx, ry, rz);
}
if(strcmp("/retirervalise", cmdtext, true) == 0)
{
DestroyObject(valise[playerid]);
}
|
Merci mais зa m'a supprimer 1 seule erreur. De plus, j'ai enlever idvalise par 1210.
Quote:
test.pwn(565) : warning 217: loose indentation
test.pwn(569) : error 017: undefined symbol "x"
test.pwn(574) : error 017: undefined symbol "valise"
test.pwn(574) : warning 215: expression has no effect
test.pwn(574) : error 001: expected token: ";", but found "]"
test.pwn(574) : error 029: invalid expression, assumed zero
test.pwn(574) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
5 Errors.
|
Re : Problиme CreateObject en commande -
S4t3K - 29.06.2014
Tu penses que X, Y et Z sont des valeurs magiques qui prennent automatiquement la valeur de la position du joueur ?
Re : Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Quote:
Originally Posted by S4t3K
Tu penses que X, Y et Z sont des valeurs magiques qui prennent automatiquement la valeur de la position du joueur ?
|
Je me disais aussi...
Il y a moyen de rйcupйrer ces positions et de faire en sorte que la mallette soit dans sa main droite ?
Merci
Re : Problиme CreateObject en commande -
S4t3K - 29.06.2014
Tu as
GetPlayerPos.
Sinon, j'ai fait un petit bout de code qui devrait pas mal t'aider. Rajoute зa au sommet de ton GM/script ou dans une include si tu prйvois d'utiliser зa sur plusieurs modes :
PHP Code:
#define PPOS(%1) \
new Float:x, Float:y, Float:z; \
GetPlayerPos(%1, x, y, z);
#define PPOS_(%1) \
new Float:xx, Float:yy, Float:zz; \
GetPlayerPos(%1, xx, yy, zz);
#define VPOS(%1) \
new Float:x, Float:y, Float:z; \
GetVehiclePos(%1, x, y, z);
#define VPOS_(%1) \
new Float:xx, Float:yy, Float:zz; \
GetVehiclePos(%1, xx, yy, zz);
Comme зa, ton code deviendra.
PHP Code:
// dans ta commande
PPOS(playerid)
CreateObject(511, x, y, z, 0.0, 0.0, 0.0);
et lа, x, y et z seront des valeurs magiques.
J'ai йgalement crйй une macro si tu veux rйcupйrer la position d'un autre joueur dans la mкme commande, et pour le deuxiиme joueur, faudra utiliser xx, yy et zz.
VPOS(id_du_vehicule) rйcupйrera en x(x), y(y) et z(z) la position de id_du_vehicule.
Mais sinon, lis la docu de
SetPlayerAttachedObject pour ton cas.
Re: Problиme CreateObject en commande -
Inyso - 29.06.2014
Cordialement,
Re : Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Donc ce serait un truc comme зa mais je dois le modifier en SetPlayerAttchedObject ?
Sinon merci, ca me sera sыrement utile
Code:
if(strcmp("/valise", cmdtext, true) == 0)
{
new valise[MAX_PLAYERS];
PPOS(playerid)
valise[playerid] = CreateObject(1210, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
AttachObjectToPlayer(valise[playerid], playerid, x, y, z, rx, ry, rz);
}
if(strcmp("/retirervalise", cmdtext, true) == 0)
{
DestroyObject(valise[playerid]);
}
Re: Re : Problиme CreateObject en commande -
Inyso - 29.06.2014
Quote:
Originally Posted by Inyso
|
Quote:
Originally Posted by StevenPhp
Donc ce serait un truc comme зa mais je dois le modifier en SetPlayerAttchedObject ?
Sinon merci, ca me sera sыrement utile
Code:
if(strcmp("/valise", cmdtext, true) == 0)
{
new valise[MAX_PLAYERS];
PPOS(playerid)
valise[playerid] = CreateObject(1210, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
AttachObjectToPlayer(valise[playerid], playerid, x, y, z, rx, ry, rz);
}
if(strcmp("/retirervalise", cmdtext, true) == 0)
{
DestroyObject(valise[playerid]);
}
|
Tu pourra glisser et crйer un objet, ensuite tu pourra le prendre en tant qu'AttachObjectToPlayer, trиs facile а utiliser. Lis un peu le
'thread' et tu devrais survivre.
Re : Problиme CreateObject en commande -
S4t3K - 29.06.2014
@Inyso : Je suis pour que les gens crйent leurs codes eux-mкmes car utiliser toutes les ressources qu'on a a disposition c'est plus facile mais on reste а un niveau de codage basique puisque toute la partie "complexe" a йtй faite par quelqu'un de plus compйtent.
Sinon, зa donnerait plutфt зa
PHP Code:
// Au sommet de ton script
new valise_slot[MAX_PLAYERS];
// En bas de ton script
stock GetFreeIndex(playerid)
{
new i = -1;
for(i = 0; i < 10; i++)
{
if(!IsPlayerAttachedObjectSlotUsed(playerid, i)) break;
}
return i;
}
// Dans OnPlayerCommandText
if(!strcmp(cmdtext, "/valise", true)
{
if(GetFreeIndex == -1) return SendClientMessage(playerid, -1, "Vous avez trop d'objets sur vous pour porter une valise !");
valise_slot[playerid] = GetFreeIndex(playerid);
SetPlayerAttachedObject(playerid, GetFreeIndex(playerid), 1210, 6); // 6 = main droite | 5 = main gauche
EditAttachedObject(playerid, valise_slot[playerid]);
return 1;
}
if(!strcmp(cmdtext, "/retirervalise", true))
{
RemovePlayerAttachedObject(playerid, valise_slot[playerid]);
valise_slot[playerid] = -1;
return 1;
}
Re: Problиme CreateObject en commande -
Inyso - 29.06.2014
Quote:
Originally Posted by S4t3K
@Inyso : Je suis pour que les gens crйent leurs codes eux-mкmes car utiliser toutes les ressources qu'on a a disposition c'est plus facile mais on reste а un niveau de codage basique puisque toute la partie "complexe" a йtй faite par quelqu'un de plus compйtent.
|
Mes excuses.
Re : Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Quote:
Originally Posted by S4t3K
@Inyso : Je suis pour que les gens crйent leurs codes eux-mкmes car utiliser toutes les ressources qu'on a a disposition c'est plus facile mais on reste а un niveau de codage basique puisque toute la partie "complexe" a йtй faite par quelqu'un de plus compйtent.
Sinon, зa donnerait plutфt зa
PHP Code:
// Au sommet de ton script
new valise_slot[MAX_PLAYERS];
// En bas de ton script
stock GetFreeIndex(playerid)
{
new i = -1;
for(i = 0; i < 10; i++)
{
if(!IsPlayerAttachedObjectSlotUsed(playerid, i)) break;
}
return i;
}
// Dans OnPlayerCommandText
if(!strcmp(cmdtext, "/valise", true)
{
if(GetFreeIndex == -1) return SendClientMessage(playerid, -1, "Vous avez trop d'objets sur vous pour porter une valise !");
valise_slot[playerid] = GetFreeIndex(playerid);
SetPlayerAttachedObject(playerid, GetFreeIndex(playerid), 1210, 6); // 6 = main droite | 5 = main gauche
EditAttachedObject(playerid, valise_slot[playerid]);
return 1;
}
if(!strcmp(cmdtext, "/retirervalise", true))
{
RemovePlayerAttachedObject(playerid, valise_slot[playerid]);
valise_slot[playerid] = -1;
return 1;
}
|
J'йtais pas vraiment parti comme зa mais merci.
2 erreurs
Quote:
(585) : error 001: expected token: ")", but found "{"
(586) : error 076: syntax error in the expression, or invalid function call
|
Ligne 585 et 586:
{
if(GetFreeIndex == -1) return SendClientMessage(playerid, -1, "Vous avez trop d'objets sur vous pour porter une valise !");
Re : Problиme CreateObject en commande -
S4t3K - 29.06.2014
oh ce fail de fdp.
la nouvelle ligne donnerait
PHP Code:
if(GetFreeIndex(playerid) == -1) return SendClientMessage(playerid, -1, "Vous avez trop d'objets sur vous pour porter une valise !");
@Inyso : Si c'est ironique, c'est fondй, je le sais. Mais au moins, il aura pas d'excuse pour revenir demander un code comme зa plus tard.
Re : Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Quote:
Originally Posted by S4t3K
oh ce fail de fdp.
la nouvelle ligne donnerait
PHP Code:
if(GetFreeIndex(playerid) == -1) return SendClientMessage(playerid, -1, "Vous avez trop d'objets sur vous pour porter une valise !");
@Inyso : Si c'est ironique, c'est fondй, je le sais. Mais au moins, il aura pas d'excuse pour revenir demander un code comme зa plus tard.
|
Merci mais
(585) : error 001: expected token: ")", but found "{"
Re: Re : Problиme CreateObject en commande -
Inyso - 29.06.2014
Quote:
Originally Posted by S4t3K
oh ce fail de fdp.
la nouvelle ligne donnerait
PHP Code:
if(GetFreeIndex(playerid) == -1) return SendClientMessage(playerid, -1, "Vous avez trop d'objets sur vous pour porter une valise !");
@Inyso : Si c'est ironique, c'est fondй, je le sais. Mais au moins, il aura pas d'excuse pour revenir demander un code comme зa plus tard.
|
(Je ne suis pas du genre а кtre dans l'ironie ni le sarcasme, dйsolй pour le malentendu, s'il fut.)
Re : Problиme CreateObject en commande -
S4t3K - 29.06.2014
@Steven : J'ai oubliй une parenthиse. Je te laisse la rajouter seul, c'est pas le plus dur
Re : Problиme CreateObject en commande -
StevenPhp - 29.06.2014
Quote:
Originally Posted by S4t3K
@Steven : J'ai oubliй une parenthиse. Je te laisse la rajouter seul, c'est pas le plus dur 
|
if(!strcmp(cmdtext, "/valise", true) == > if(!strcmp(cmdtext, "/valise", true))
Merci !
S4t3K t'es le gar qui m'a le + aidй en pawn et si je progresse je crois que ce sera en parti grвce а toi !
Merci