• 03 Mai 2025, 19:11:36


Auteur Sujet: spawn double/// et regeneration vie  (Lu 2603 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
spawn double/// et regeneration vie
« le: 21 Mai 2013, 18:31:09 »
salut les gens, je suis aujourd’hui confronté a un problème vraiment bizarre, ceci se passe depuis longtemps !
quand je spawn un véhicule via mon magasin ou mon système d’administration bha il spawn en une fois sans soucis!
et 5 minutes après je revient au même endroit et je vois mon tank spawner y a 5 minutes!!!
je precise que ce vehicule est deja pris /detruit par un autres joueur!

est ce un bug? ou une erreur de script?

merci
« Modifié: 22 Mai 2013, 17:26:38 par natsu00 »

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #1 le: 21 Mai 2013, 20:02:07 »
Montre ta commande /detruit ?


Adju ♥
(-_-)



Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #2 le: 21 Mai 2013, 20:08:13 »
bha ce n'est pas une commande detruit, le joueur prend la voiture et se balade et quand elle a plus de vie elle disparait ^^

cela me donne exactement la même chose avec un spawn admin ou avec mon magasin

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #3 le: 21 Mai 2013, 20:09:42 »
Dans ce cas c'est normal, le véhicule respawn... Il faut faire en sorte qu'une fois le véhicule explose, il ne respawn pas  :smile:


Adju ♥
(-_-)



Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #4 le: 21 Mai 2013, 20:45:17 »
Ok donc je fait une commande quand le véhicule spwne est détruit alors il ne spawnpas.....
Je connais destroyvehicule , ensuite je cree une variable correspondant au véhicule spawne mais comment je fait pout dire qu il ne respawn pas ?
Ce serait simple si i (variable) est detruit alors il ne respawn pas !
Merci

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : Re : voiture spawn en double --'
« Réponse #5 le: 21 Mai 2013, 20:47:56 »
Ok donc je fait une commande quand le véhicule spwne est détruit alors il ne spawnpas.....

Tu n'as strictement rien compris de ce que j'ai écrit. Relis bien ce que j'ai écris et ensuite lis ce que tu viens de dire.  :closedeyes:


Adju ♥
(-_-)



Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #6 le: 21 Mai 2013, 20:52:00 »
Bha si m a dit de faire en sorte que le vehicule ne respawn pas une fois eplose !
Donc si  i ( nom.des vehicule spawne ) explose alors il n est plus respawne!
Non? Sinon jai pas compris !
Merci

Hors ligne spiirou

  • *
  • L'avenir appartient à ceux qui se lèvent
  • Messages: 866
    • Voir le profil

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #8 le: 21 Mai 2013, 21:16:42 »
En utilisant les fonctions que Spiirou a eu la gentillesse de te noter, tu peux procéder de la sorte:

Quand le véhicule meurt (OnVehicleDeath), il faut le détruire. Tout simple, il y a juste une ligne à mettre dans ta Callback...


PS: Si tu pouvais faire un petit effort dans ton écriture, que ce soit grammaticalement ou orthographiquement, ça ferai moins mal aux yeux, et ce serait plus compréhensible.

++


Adju ♥
(-_-)



Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : voiture spawn en double --'
« Réponse #9 le: 22 Mai 2013, 06:25:32 »
Désolé j'etait sur mon telephone ^^ et le correcteur Me saoule ^^
Merci je regatre ça ce soir

voici mon pawn :

[spoiler]public OnVehicleDeath(vehicleid, killerid)
{
          new tank;
          tank = GetPlayerVehicleID(432);
          DestroyVehicle(tank);
          new helico;
          helico = GetPlayerVehicleID(447);
          DestroyVehicle(helico);
          new hunter;
          hunter = GetPlayerVehicleID(425);
          DestroyVehicle(hunter);
          new hydra;
          hydra = GetPlayerVehicleID(520);
          DestroyVehicle(hydra);
        return 1;
}[/spoiler]

je pense qu'il fonctionne ^^
maintenant j'aurai envie d'une autre commande que j'ai presque fini et comprise. Je voudrai faire en sorte que le joueur puisse acheter une trousse de soin automatique, en gros il recupere de la vie petit à petit (comme dans les nouveau fps ) bien sur cet atout coutera cher.
Voici mon idée :

Je fait un timer qui se repete et qui dit que tous les 3 secondes on donne +2 points de vie au joueur par exemple  mais pouvez vous m'expliquer le sytème de repetition j'avais pensais à cette commande :
http://wiki.sa-mp.com/wiki/SetTimerEx

merci


EDIT: dnc j'ai reussi à faire un timer, mais je voudrait lui ajouter petit a petit de la vie et setplayerhealt ne le fait pas faut faire quelle fonction?

voici mon FS

http://pastebin.com/b4fqmESV

il se compile pas de soucis je fait repeter la commande pour gagner de la vie cotinuellement mais il me met juste la santé à 5 --'
« Modifié: 22 Mai 2013, 16:43:39 par natsu00 »

Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : spawn double/// et regeneration vie
« Réponse #10 le: 22 Mai 2013, 17:49:33 »
salut, je me permet de faire un double post car sinon mon message serait trop long et incompréhensible

donc j'ai reussi ma commande pou ce que ça interresse la voici :
http://pastebin.com/JgWDPtHn

Mais je voudrait que lorsque le joueur meurt le timer s'arrete donc j'ai betement pris kill timer MAIS quand je met

public OnPlayerDeath(playerid, killerid, reason)
{
    KillTimer(live);
    return 1;
}

bha il me met une erreur :
syntax error in the expression, or invalid function call

donc apparrement ce serait un problème dû au non du timer mais je l'ai appelé live non??

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : spawn double/// et regeneration vie
« Réponse #11 le: 22 Mai 2013, 17:50:12 »
Code: (pawn) [Sélectionner]
KillTimer("live");


Adju ♥
(-_-)



Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : spawn double/// et regeneration vie
« Réponse #12 le: 22 Mai 2013, 17:58:24 »
okay merci x) j'ai changé mais maintenant j'ai une autres erreur jamais vu :
error 035: argument type mismatch (argument 1) à la même ligne que le kill timer

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3551
    • Voir le profil
Re : spawn double/// et regeneration vie
« Réponse #13 le: 22 Mai 2013, 18:00:20 »
Code: (pawn) [Sélectionner]
KillTimer(live[playerid]);


Adju ♥
(-_-)



Hors ligne natsu00

  • *
  • Tueur en série
  • Messages: 169
    • Voir le profil
Re : spawn double/// et regeneration vie
« Réponse #14 le: 22 Mai 2013, 18:05:21 »
bha si je met les guillemets même erreur si je ne les met pas j'ai 4 erreurs:

error 028: invalid subscript (not an array or too many subscripts): "live"
 error 001: expected token: ";", but found "]"
error 029: invalid expression, assumed zero
fatal error 107: too many error messages on one line

j'éspere que j'y arriverai je suis trop content de moi là ^^

meme ligne que le killtimer

edit: j'en profite pour vous montrer tous les elements du timer (plus simple que mon s complet)

[spoiler]
forward live(playerid);//en haut


case 19:{ //c'est une case dans mon dialogue reponse
if(GetPlayerMoney(playerid) < 900) return SendClientMessage(playerid,0xEE3B3B, "You do not have $ 900");
SetTimer("live", 2000, true);
GivePlayerMoney(playerid,-900);}}}}

public live(playerid)
{
new Float:health;
GetPlayerHealth(playerid,health);
if (health < 100)
{
SetPlayerHealth(playerid, health +2);
}
return 1;}

public OnPlayerDeath(playerid, killerid, reason)
{
    KillTimer("live");
    return 1;
}[/spoiler]