Aller au contenu


Détecter Un Coup D'épée (lame Courte)


  • Veuillez vous connecter pour répondre
3 réponses à ce sujet

#1 Confridín

Confridín

    Daddy ! je VEUX un nouveau sous-nom!!!


Posté 30 septembre 2007 - 19:44

Bonsoir à tous,

Dans le cadre du mod Morrowind Stargate, nous avons un petit souci avec un de nos scripts. Il s'agit de celui du Zat (une sorte de pistolet). Nous utilisons une lame courte avec une portée élevée pour simuler cette arme. Nous avons réussi à faire la même chose avec la lance jaffa (sorte de gros fusil) sur la base d'une l'arbalète.

La seule chose que nous n'arrivons pas à faire, c'est jouer le son de tir du zat quand le son du coup d'épée est joué. Le script est attaché à l'arme (donc à la lame courte). Le problème est que je ne sais pas d'où peut venir le problème mais si j'ai plusieurs pistes :

- j'essaie peut-être de détecter le mauvais son
- il faut peut être mettre un appelant pour détecter le son (je ne sais pas si c'est le "player" ou l'arme qui doit jouer le son)

Pour information, voici les scripts dans l'état actuel.

Code de la lance jaffa
if ( SonOn == 1 )
	if ( OnPCEquip == 1 )
		if ( GetSoundPlaying "crossbowShoot" == 1 )
			if ( GetSoundPlaying  "_SG_Snd_TirJaffa" == 0 )
				StopSound "crossbowShoot"
				playsound3dvp "_SG_Snd_TirJaffa" 1.0 1.0
			endif
		endif
	Elseif ( OnPCEquip == 0 )
		Set SonOn to 0
	endif
endif

Code du Zat
if ( OnPCEquip == 1 )
	if ( GetSoundPlaying "SwishM" == 1 )
		playsound "_SG_Snd_Zat"
	elseif ( GetSoundPlaying "SwishL" == 1 )
		StopSound "shock bolt"
		playsound "_SG_Snd_Zat"
	elseif ( GetSoundPlaying "SwishS" == 1 )
		StopSound "shock bolt"
		playsound "_SG_Snd_Zat"
	endif
endif

Merci d'avance pour votre aide.
Ancien modérateur de Wiwiland à la retraite.

Ancien créateur et fan du mod Morrowind Stargate.

Et depuis, je suis devenu consultant SEO sur SeoMix et game addict sur Play-Mod

#2 Von Zeeple

Von Zeeple

    Grille pain Dwemer


Posté 30 septembre 2007 - 20:10

bonsoir!

c'est  "player"->getsoundplaying  il me semble...

EDIt: du coup cela ne marchera pas si c'est un pnj qui utilise le zat

Modifié par Von Zeeple, 30 septembre 2007 - 21:31.

Le Steampunk, c'est bon, mangez en  !

#3 a3jv

a3jv

    ... à 4 je reviens.


Posté 02 octobre 2007 - 10:22

Von Zeeple me semble avoir raison, il faut des "player".

Si la sélection des sons de base concernés est correcte, je verrai bien le 2ème script comme cela :
if ( OnPCEquip == 1 )
    if ( player->GetSoundPlaying, "SwishM" )
        PlaySound, "_SG_Snd_Zat"
    elseif ( player->GetSoundPlaying, "SwishL" )
        PlaySound, "_SG_Snd_Zat"
    elseif ( player->GetSoundPlaying, "SwishS" )
        PlaySound, "_SG_Snd_Zat"
    elseif ( player->GetSoundPlaying, "shock bolt" )
        player->StopSound, "shock bolt"
        PlaySound "_SG_Snd_Zat"
    endif
endif
Voir aussi s'il ne convient pas de rajouter des "player->StopSound, "Swish." pour les 3 sons "Swish.".

Modifié par a3jv, 02 octobre 2007 - 10:23.

Les choses n'ont que l'importance ou la valeur qu'on leur donne.

#4 chef

chef

Posté 02 novembre 2007 - 01:18

Merci de la part de l'équipe  :lol:

Team Stargate



"Si vous traversez l'enfer, ne vous y arrêtez pas." - Wiston Churchill





0 utilisateur(s) li(sen)t ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)