• 06 Juin 2026, 17:26:29


Auteur Sujet: Probleme ...  (Lu 2507 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne xEagl3Zx

  • *
  • Grand Banditisme
  • drift ...
  • Messages: 504
    • Voir le profil
Probleme ...
« le: 18 Août 2009, 18:05:57 »
Salut all.

Mon probleme viens du respawn de tono explosif enfet j'ai creer une map avec des tono mais quand je fonce dedans j'explose se qui est logique mais pour le respawn je les voit mais les autres joueur non ??? pouvez vous m'aider ... et pour voir plus près vous pouver aller sur le server mais je le donne pas comme sa faut me le demander pasque je tient pas etre bannis pour pub ... Merci à vous ...

Double post
Donc personne c'est ???
« Modifié: 18 Août 2009, 19:33:39 par xTig3rZx »
..:: Vive le drift ... ::..[/u]



++TZ++

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Probleme ...
« Réponse #1 le: 18 Août 2009, 19:48:17 »
Detruit l' objet et recreer le ;)



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne xEagl3Zx

  • *
  • Grand Banditisme
  • drift ...
  • Messages: 504
    • Voir le profil
Re : Probleme ...
« Réponse #2 le: 18 Août 2009, 21:34:29 »
ee s'est pas une question de recreer s'est une question de faire respawn l'objet o plus vite pour que tout le monde les en visibilité ...
..:: Vive le drift ... ::..[/u]



++TZ++

Hors ligne Ssk

  • *
  • Lulu's Stunt - Le serveur stunt de Lulu !
  • Messages: 8154
    • Voir le profil
Re : Probleme ...
« Réponse #3 le: 18 Août 2009, 22:11:25 »
Le detruire et le recreer c' est une facon de faire pour que tout les joueurs puissent revoir l objet ;)



Derrière tout programme se cache un programmeur, je considère le monde comme un programme.
Mon blog

Hors ligne xEagl3Zx

  • *
  • Grand Banditisme
  • drift ...
  • Messages: 504
    • Voir le profil
Re : Probleme ...
« Réponse #4 le: 19 Août 2009, 00:27:32 »
Je ne comprend pas se que tu ve dire ...
..:: Vive le drift ... ::..[/u]



++TZ++

Hors ligne Lance

  • *
  • Tueur
  • Messages: 87
    • Voir le profil
Re : Probleme ...
« Réponse #5 le: 19 Août 2009, 04:09:45 »
Un DestroyObject puis un CreateObject.

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Probleme ...
« Réponse #6 le: 19 Août 2009, 09:11:02 »
Les objets ne respawnent pas automatiquement, contrairement aux véhicules.
Ce qui est normal puisque la plupart du temps, un objet est fixe ou en mouvement mais le joueur ne peut pas l'emmener à l'autre bout de la carte.

Donc lorsqu'un tonneau explose, il est en fait toujours là pour le serveur.

Le problème réside dans le fait qu'il est impossible pour le serveur de savoir si un tonneau a explosé ou pas.
Le mieux reste donc de faire une fonction qui détruit tous les tonneaux (même ceux qui n'ont pas explosé) et qui les recrée.

++
Syg
Courtesy of GtaManiac

Hors ligne xEagl3Zx

  • *
  • Grand Banditisme
  • drift ...
  • Messages: 504
    • Voir le profil
Re : Probleme ...
« Réponse #7 le: 19 Août 2009, 12:04:09 »
Et on pourrait me dire comment faire sa ??? s'il vous plait ...

Double post
Et j'utilise le streamer de sim SimStreamv3.0 ...
« Modifié: 19 Août 2009, 14:05:27 par xTig3rZx »
..:: Vive le drift ... ::..[/u]



++TZ++

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Probleme ...
« Réponse #8 le: 19 Août 2009, 14:13:56 »
sont include a une fonction detruire creer regarde sont topic
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne xEagl3Zx

  • *
  • Grand Banditisme
  • drift ...
  • Messages: 504
    • Voir le profil
Re : Probleme ...
« Réponse #9 le: 19 Août 2009, 14:31:45 »
Humm trouve pas le topic tu pourrais me l'envoyer s'il te plait merci ...
..:: Vive le drift ... ::..[/u]



++TZ++

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne xEagl3Zx

  • *
  • Grand Banditisme
  • drift ...
  • Messages: 504
    • Voir le profil
Re : Probleme ...
« Réponse #11 le: 19 Août 2009, 17:35:47 »
Euh comment on fait désolé de vous embéter je suis pas encore superd bon en scripting pour tout comprendre d'un cou ... si vous voulez bien m'aidez merci ... merci beaucoup a vous ...
..:: Vive le drift ... ::..[/u]



++TZ++

Hors ligne Lance

  • *
  • Tueur
  • Messages: 87
    • Voir le profil
Re : Probleme ...
« Réponse #12 le: 19 Août 2009, 17:47:08 »
Ba tu fais en sorte qu'un DestroyStreamObject détruit tous les tono, et pis un CreateStreamObject qui les re-créer. Sois avec une coommande, ou un Timer pour que sa sois automatique ect...

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Probleme ...
« Réponse #13 le: 19 Août 2009, 17:54:18 »
c'est tres simple voila comment faire


Code: (declaration) [Sélectionner]
new barril1;
new barril2;
new barill3;
forward Detruire();

ensuite on va proceder a une fonction sympatique

CreatBarill()
{
  barril1 = CreateObject( 2587, 2001.195679, 1547.113892, 14.283400, 0, 0, 96 );
  barril2 = CreateObject( 2587, 2001.195679, 1547.113892, 14.283400, 0, 0, 96 );
  barril3 = CreateObject( 2587, 2001.195679, 1547.113892, 14.283400, 0, 0, 96 );
  printf("barril creer");
}

Dans ton OnGameModeInit ajoute ceci

CreatBarill();
puis un timer

SetTimer("Detruire", 5000, 1);
la on va faire le public qui permettras de detruire et de recreer les barrille

public Detruire()
{
   DestroyObject(barril1 );
   DestroyObject(barril2 );
   DestroyObject(barril3 );
   printf("barril detruit");
}

voila le public qui permet de detruire mais on aimerais qui reapparaissent oui mais comment en remettant un autre timer nan du tout juste en reprennant une fonction que nous avons faite aupparravent

CreatBarill();
ce qui donne

public Detruire()
{
   DestroyObject(barril1 );
   DestroyObject(barril2 );
   DestroyObject(barril3 );
   printf("barril detruit");
   CreatBarill();
}


PS: les CreateObject citer sont tirer du wiki samp

PS2: je n'est pas tester ce code mais il devrait fonctionner je pense
« Modifié: 19 Août 2009, 17:56:00 par cristab »
pas d'aide en PM, vous êtes sur un forum est il me semble que vous êtes la pour avoir de l'aide donc pourquoi MP une seul personne qui ne vous répondra pas alors qu'il y a plein de membre ici

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Probleme ...
« Réponse #14 le: 20 Août 2009, 10:30:59 »
Le problème avec la solution de cristab c'est que si il y a 50 barils, il faut 50 variables, 50 lignes de code pour la création et 50 pour la destruction.

Sachant que l'attribution des ID sous SAMP se fait de manière continue (les ID des objets vont se suivre), le script suivant permet facilement de créer/détruite autant de barils que l'on veut avec le minimum de script :

Code: (pawn) [Sélectionner]
new BarilDebut;
new BarilFin;

/**********************************
* FONCTION DE CREATION DES BARILS *
***********************************/
CreerBarils ()
{
    /* Création du premier baril */
    BarilDebut = CreateObject (...);

    /* Ici on mettra autant de créations de barils que l'on veut sans affecter les ID à aucune variable */
    CreateObject (...);
    CreateObject (...);
    CreateObject (...);
    ...
    /* Création du dernier baril */
    BarilFin = CreateObjet (...);
}

/*************************************
* FONCTION DE DESTRUCTION DES BARILS *
**************************************/
DetruireBarils ()
{
    new i;
    for (i=BarilDebut ; i<=BarilFin ; i++)
    {
        DestroyObject (i);
    }
}

Remarques :
  • Les deux fonctions ci-dessus peuvent appeler n'importe quand et dans n'importe quelle autre fonction (dans un timer par exemple qui détruit et recrée les barils à intervalle régulier).
  • Il est aussi très facile de remplacer les CreateObject et DestroyObject de ce bout de script par les fonctions correspondantes d'un streamer.
  • Le nombre total de barils est donné par : NbBarils = BarilFin - BarilDebut + 1;

++
Syg
Courtesy of GtaManiac