• 06 Juillet 2025, 17:24:45


Auteur Sujet: Herse  (Lu 8522 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne ThePlaymobile

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Herse
« le: 04 Novembre 2008, 20:14:10 »
Bonsoir j'ai une petite demande a faire si quelqu'un aurait une commande pour pausser des herses et que dit qu'un joueur passe dessus sa face mettre sa voiture en feux cela serait simpas de me passer la cmd pour ceux qui voudrais bien

Je vous remerci boucoup pour ceux qui voudrais bien

++
Team Fi scripteur besoin d'aide conctater nous  ++ les gens

Hors ligne cristab

  • *
  • Messages: 8379
    • Voir le profil
Re : Herse
« Réponse #1 le: 04 Novembre 2008, 20:19:13 »
ici on aide il me semble
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 NatiVe™

  • *
  • Messages: 7977
    • Voir le profil
Re : Herse
« Réponse #2 le: 04 Novembre 2008, 20:25:02 »
Topic déjà créer par quelqu'un d'autre, tu peut le trouver içi

NV.



Tu vois avant? Bah j'étais là encore avant!

Hors ligne ThePlaymobile

  • *
  • Criminel
  • Messages: 34
    • Voir le profil
Re : Herse
« Réponse #3 le: 04 Novembre 2008, 20:58:15 »
j'ai vu un truck sur samp.com mais le lien est mort :s
Team Fi scripteur besoin d'aide conctater nous  ++ les gens

Hors ligne garderer

  • *
  • Bandit
  • Messages: 271
    • Voir le profil
Re : Herse
« Réponse #4 le: 04 Novembre 2008, 22:50:58 »
Je lé fait pour mon rpg

[code=]//herse
indication
new Float:N,Float:G,Float:R;
new herse;
forward herselook()

Danse le init SetTimer("herselook",1000,1);


// dans les commande
if(strcmp(cmd,"/herse",true)==0)
{
DestroyObject(herse);
GetPlayerPos(playerid, N,G,R);
herse = CreateObject(1593,N,G+2,R-0.75,0,0,0);
SendClientMessage(playerid, COLOR_ORANGE, "( ! ) Herse en place !");
PlayerPlaySound(playerid,1057,0,0,0);
return 1;
}

//herse public a un endroit dans ton  script
public herselook()
{
for(new i=0; i < MAX_PLAYERS; i++)
 {
if(PlayerToPoint(5.0, i, N, G, R))
{
if(IsPlayerInAnyVehicle(i))
{
SetVehicleHealth(GetPlayerVehicleID(i),200);
}
}
}
}

c'est pas mon code sur rpg je vient de le faire a la va vite mais comme sa sa marche.

« Modifié: 04 Novembre 2008, 23:08:04 par garderer »

Hors ligne madinina972

  • *
  • Grand Banditisme
  • Debutant dans le pawn
  • Messages: 517
    • Voir le profil
Re : Herse
« Réponse #5 le: 04 Novembre 2008, 23:32:32 »
j'ai justement créer un topic il y a longtemps , sur le forum SAMP tu peut en trouver , sa s'appelle Stringer.

a propos, quand on roule sur les herse , sa serait possible que les pneu crève quand tu roule dessus ?
si oui comment fait-on?

++
madinina972
Madinina972



Hors ligne garderer

  • *
  • Bandit
  • Messages: 271
    • Voir le profil
Re : Herse
« Réponse #6 le: 04 Novembre 2008, 23:35:52 »
non on peut pas.

Hors ligne madinina972

  • *
  • Grand Banditisme
  • Debutant dans le pawn
  • Messages: 517
    • Voir le profil
Re : Herse
« Réponse #7 le: 04 Novembre 2008, 23:37:25 »
ok merci ;)
Madinina972



Hors ligne » Lukubi™

  • *
  • Soy el bico loco
  • Messages: 3282
    • Voir le profil
Re : Herse
« Réponse #8 le: 06 Novembre 2008, 21:51:28 »
j'ai tester sa sur mon serveur et quand le joueur passe sur la herse rien ne se^passe son vehicule reste intact  ???

avez vous une idée du probleme ?

“Si la Terre est un endroit dangereux ce n’est pas à cause des hommes mauvais mais à cause des hommes bons qui ne font rien pour les empêcher.” (Albert Einstein).

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Herse
« Réponse #9 le: 06 Novembre 2008, 23:26:14 »
Salut,

je viens de regarde le code, et normalement, il devrait être ok...
peut-être n'as tu pas bien placé le code:

en haut du script:
//herse indication
new Float:N,Float:G,Float:R;
new herse;
new TimerHerse;
forward herselook()

dans ta callback OnGameModeInit()
TimerHerse = SetTimer("herselook",1000,1);
dans le OnGameModeExit()
KillTimer(TimerHerse);

dans la callback OnPlayerCommandText
if(strcmp(cmd,"/herse",true)==0)
{
DestroyObject(herse);
GetPlayerPos(playerid, N,G,R);
herse = CreateObject(1593,N,G+2,R-0.75,0,0,0);
SendClientMessage(playerid, COLOR_ORANGE, "( ! ) Herse en place !");
PlayerPlaySound(playerid,1057,0,0,0);
return 1;
}

je te conseillerais de le mettre tout en bas de ton script:
public herselook()
{
for(new i=0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i))continue;
if(!IsPlayerInAnyVehicle(i))continue;
if(PlayerToPoint(i, N, G, R,5.0)){
SetVehicleHealth(GetPlayerVehicleID(i),200);
}
}
}

et puis le PlayerToPoint:

PlayerToPoint(playerid, Float:x, Float:y, Float:z, Float:dist)
{
new Float:PPos[3];
GetPlayerPos(playerid,PPos[0],PPos[1],PPos[2]);
x -= PPos[0];
y -= PPos[1]
z -= PPos[2];
return ((x * x) + (y * y) + (z * z) <= dist * dist);
}

et voilà, ça devrait fonctionner, bonne chance

++Sim++
« Modifié: 08 Novembre 2008, 00:34:33 par Sim »





Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : Herse
« Réponse #10 le: 07 Novembre 2008, 09:54:06 »
Avec un timer à 1000 (1 seconde), je pense qu'il faut s'arrêter sur le herse pour qu'on détecte le passage dessus.
En effet, on va tester toutes les secondes pour voir si le joueur est dans un rayon de 5 mètres autour de la herse.
Lorsque l'on passe à pleine vitesse sur le herse, il y a peu de chance pour que la détection se fasse.

La solution est de diminuer la durée du timer pour qu'il fasse la détection plus souvent.
Mais même en diminuant le timer (à 100 ms par exemple), il se peut que dans certains cas la détection ne se fasse pas.

Autre chose, lors de la création de la herse, il serait bien de mettre le joueur créateur un peu à l'écart sinon c'est son propre véhicule qui va exploser.
Ou alors créer la herse un peu plus loin de lui (par exemple, 6 mètres derrière pour qu'il soit en dehors du rayon d'action de la herse).

++
Syg
Courtesy of GtaManiac

Hors ligne garderer

  • *
  • Bandit
  • Messages: 271
    • Voir le profil
Re : Herse
« Réponse #11 le: 07 Novembre 2008, 10:22:44 »
Oui c'est bien si on veut vraiment le détecté on agrandit la zonne ou on fait un barrage avec des voitures de police.
Mais sur mon rpg souvent la détection est faite dans la plus part dès cas.
Le timer on peut pas trop le baisser sinon on flooderai le serveur... A moin de lintroduire dans un call qui flood déjà et encore il faudrais que il vérifie tout.

Hors ligne Franky™

  • Franky™ est bien la
  • *
  • Gangster
  • Messages: 1058
    • Voir le profil
Re : Herse
« Réponse #12 le: 07 Novembre 2008, 13:13:36 »
je suis entrain de créer mon même justement un systeme de herse, qui freeze je joueur quand tu passe la herse, et au bout de X seconde sa te defreeze, mais sa bug toujours alors avec Mister Fred on va completement le changer.
quand sa sera fait je le partagerai ici

++ Franky


°°((Franky's WebSite
Désolé pour mes fautes d'orthographes

Hors ligne Le poulain de gta

  • *
  • Tueur en série
  • Messages: 103
    • Voir le profil
Re : Herse
« Réponse #13 le: 07 Novembre 2008, 22:38:04 »
merci pour laide

Hors ligne Le poulain de gta

  • *
  • Tueur en série
  • Messages: 103
    • Voir le profil
Re : Herse
« Réponse #14 le: 07 Novembre 2008, 22:40:52 »
euuuh player to point c'est ou ?????