Peut-on Interdire L'utilisation De Marque Et Rappel?
#1
Posté 12 avril 2007 - 17:48
J'ai une variable pour savoir si le joueur est dans l'Archipel ou non. A partir de là, comment faire pour que le joueur ne puisse plus créer une marque et l'utiliser?
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#2
Posté 12 avril 2007 - 18:01
Enable/disable teleporting (ce qui est utilisé pour la Chambre du Coeur; c'est donc une commande Morro seul)
http://www.uesp.net/...ableTeleporting
Par contre, ça supprime aussi les Interventions...
#3
Posté 12 avril 2007 - 19:17
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#4
Posté 12 avril 2007 - 19:28
#5
Posté 12 avril 2007 - 19:30
Modifié par Orann, 12 avril 2007 - 19:31.
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#6
Posté 12 avril 2007 - 19:33
edit: de rien cher Orann
Modifié par Von Zeeple, 12 avril 2007 - 19:38.
#7
Posté 12 avril 2007 - 19:36
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#8
Posté 14 avril 2007 - 17:12
En français, il n'y a jamais, jamais, JAMAIS, J-A-M-A-I-S, de cédille à un 'c' devant un 'e', un 'i' ou un 'y'. Jamais. Sans aucune exception. Pas la moindre. Zéro. Cédille devant e, i ou y = faute. Un point, c'est tout, c'est comme ça, ça a toujours été comme ça, et ça le sera toujours.
#9
Posté 14 avril 2007 - 18:02
Merci
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#10
Posté 29 juin 2007 - 16:57
if ( RAJ_SiluDreaming == 1 ) if ( GetPCCell "Rêve de Silu" == 0 ) player->PositionCell 3142.668 5652.571 50 180 "Rêve de Silu, jardin rouge" MessageBox "Vous ne pouvez pas utiliser Rappel pour quitter un rêve." endif endif
Le tout dans un script qui tourne constamment. Ceci dit, les rêves étaient des cells intérieures "behave like exterior", donc j'étais assuré que l'utilisation des Interventions ne menaient nulle part. Dès lors, toute tentative de téléportation était forcément un Rappel et je l'empêchais.
Modifié par Souris Cornue, 02 juillet 2007 - 15:19.
#11
Posté 29 juin 2007 - 18:28
Si j'ai bien compris, je ne pense pas que je pourrai le réutiliser...
En tout cas, c'est très sympa de repasser sur ce vieux topic car je n'ai toujours pas eu le temps de régler ce problème et ça me rapelle à l'ordre!
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#12
Posté 29 juin 2007 - 18:33
Y'a pas de souci pour essayer d'aider, même si hélas l'idée n'est pas extra. L'autre truc auquel j'avais pensé, c'est les commandes "GetSpellEffect" mais je ne crois pas que ça marche pour un sort instantané (plutôt les trucs comme Bouclier, etc). Enfin, je ne me suis jamais penché sur cette commande de trop donc je ne sais pas dire s'il y a là une piste exploitable.
Du reste, j'ai peur de ne pas avoir de meilleure idée là...
#13
Posté 02 juillet 2007 - 15:09
begin kbase_snolevitate if ( MenuMode == 1 ) return endif if ( player->geteffect, sEffectLevitate == 1 ) player->removeeffects, 10 return endif endMaintenant en effet je ne sais pas ce que ça donnerait sur un sort instantané.
L'abus de SMS est dangereux pour l'élocution mentale
Le mod qui révèle (presque) tout sur les dwemers : Dwarmor
Fervent Partisan de l'Instabilité Avatarienne
Quart du quarteron des VGM...
#14
Posté 02 juillet 2007 - 17:57
if ( MenuMode == 1 ) return endif if ( player->geteffect, sEffectDivineIntervention == 1 ) player->removeeffects, 10 return endif if ( player->geteffect, sEffectMark == 1 ) player->removeeffects, 10 return endif if ( player->geteffect, sEffectAlmsiviIntervention == 1 ) player->removeeffects, 10 return endif end
Par contre, je n'ai pas trouvé pour le rappel... Mais déjà si on ne peux pas faire de marque dans l'archipel, le rappel pert de son attrait pour le joueur...
[edit] Ca ne marche pas Pour aucun des 3 sorts: j'ai pu faire l'intervention divine, la marque...
Modifié par Orann, 02 juillet 2007 - 18:27.
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#15
Posté 02 juillet 2007 - 18:52
Orann, le 02.07.2007 à 18:57, dit :
Comme prévu... Morrowind ne considère comme "Effet" que ce qui reste en place, et qui peut être enlevé via une Dissipation. Absorption de sort, Réflexion, Lévitation, Bouclier... Pour les sorts instantanés, non.
Je continue de garder une petite place dans ma tête pour réfléchir à ça !
#17
Posté 06 juillet 2007 - 20:16
__________________________________________
Bon j'ai continué les tests avec les infos de Korfandar et ça ne marche toujours pas. Je sais d'ailleurs pourquoi: non pas que le jeu ne peux annuler l'effet, mais c'est en fait la détection du lancement du sort qui ne marche pas.
J'ai testé avec ce script et les messages box n'apparaissent pas.
begin A_P_stopinterventions if ( MenuMode == 1 ) return endif if ( A_P_InArchipel == 0 ) return endif if ( player->geteffect, sEffectDivineIntervention == 1 ) player->removeeffects, 62 return endif if ( player->geteffect, sEffectMark == 1 ) messagebox "vous utilisez marque" player->removeeffects, 60 return endif if ( player->geteffect, sEffectRecall == 1 ) messagebox "vous utilisez rappel" player->removeeffects, 61 return endif if ( player->geteffect, sEffectAlmsiviIntervention == 1 ) player->removeeffects, 63 return endif end
Voila, donc retour à la case départ si ce n'est que si on trouvait le moyen de détecter le lancement de ces sorts, removeeffects pourrait peut-être se révéler efficace car son inefficacité n'est pas démontrée...
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#18
Posté 11 juillet 2007 - 11:26
Il me semble que la fonction exacte est
if (Player GetSpellEffects, Recall==1 )
Peut-être que le problème vient de là, mais je ne suis pas une spécialiste de ce genre de fonctions...
(Wiwi d'or de la plus serviable et de la plus cool... Merci à vous tous...)
#19
Posté 11 juillet 2007 - 11:35
--Kira--, le 11.07.2007 à 12:26, dit :
Il me semble que la fonction exacte est
if (Player GetSpellEffects, Recall==1 )
En tout cas, Orann, en utilisant getspelleffects, je peux t'assurer que ça passe.
Not Quite Dead, le 22.06.2006 à 19:42, dit :
Fervent Partisan de l'Immuabilité Avatarienne.
#20
Posté 11 juillet 2007 - 11:46
GetEffectSpell concerne les sorts instantanés, du genre guérison du fleau, de la paralysie, rappel, etc...
(En fait, je ne sais pas si c'est une règle ben définie, mais empiriquement, ça marche...)
(Wiwi d'or de la plus serviable et de la plus cool... Merci à vous tous...)
#21
Posté 11 juillet 2007 - 11:52
Not Quite Dead, le 22.06.2006 à 19:42, dit :
Fervent Partisan de l'Immuabilité Avatarienne.
#22
Posté 11 juillet 2007 - 12:05
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#23
Posté 16 juillet 2007 - 11:49
begin A_P_stopinterventions short fait if ( MenuMode == 1 ) return endif if ( A_P_InArchipel == 0 ) return endif if ( fait == 0 ) messagebox "stopinterventions lancé!" set fait to 1 endif if ( player->getspelleffects, "divine intervention" == 1 ) player->removeeffects, 62 return endif if ( player->getspelleffects, "Mark" == 1 ) messagebox "vous utilisez marque" player->removeeffects, 60 return endif if ( player->getspelleffects, "Recall" == 1 ) messagebox "vous utilisez rappel" player->removeeffects, 61 return endif if ( player->getspelleffects, "almsivi intervention" == 1 ) player->removeeffects, 63 return endif end
Le message me confirme que le script est lancé mais rien en ce qui concerne les sorts lorsque je les lancent... Et pourtant, les sorts fonctionnent malheureusement.
Entamez votre voyage vers l'Archipel de Pertevue ! Test communautaire en cours.
#24
Posté 16 juillet 2007 - 12:23
Je prends un peu l'histoire en cours mais je pense que le problème vient du fait qu'il va y avoir compétition entre ton script et le script de l'intervention divine (pareil pour les autres)
Ce que je veux dire c'est que :
if ( player->getspelleffects, "divine intervention" == 1 ) -entre ces deux lignes, Morro a déjà considéré qu'il y a intervention divine, et donc il téléporte le joueur- player->removeeffects, 62 return endif
Mais bon, je me trompe peut-être car les scripts, j'ai pas toujours tout compris
Par contre, je pense que tu peux bricoler un truc pour marque-rappel en obligeant le joueur à lancer une marque toutes les 5 secondes :
Par exemple:
[...] if ( timer >= 5 ) ; 5 par exemple mais on peut mettre + ou - player->addeffect, 60 ;lance une marque, je sais pas si cette fonction existe mais si "removeeffect" existe, "addeffect" aussi je suppose ... player->removeeffect, 60 ;retire l'effet marque, peut-être dispensable mais j'ai déjà essayé des sorts de marque à effets constants et ça marche pas du tout, ça bugge même un peu, en tout cas je pense pas que le removeeffect de trop puisse faire de mal... set timer to 0 endif
Le joueur pourra lancer des sorts de rappels mais ce sera inutile puisque cela le téléportera là où il était il y a 5 secondes. Mais bon, c'est sûr que c'est du bricolage.
PS : je n'ai pas du tout testé ce script (c'est juste une idée qui me passe comme ça par la tête), c'est peut-être complètement faux (et si c'est le cas, je m'excuse d'avance )
#25
Posté 16 juillet 2007 - 15:20
Au début de l'archipel, et a chaque étape importante, tu ne peux pas supprimer le sort rappel de la liste des sort du joueur ? Aussi, vérifier si il a des potions ou des parchemins, et lui prendre aussi... Si tu as mauvaise consience, tu peux lui racheter Mais il y a peut etre moyen de creer soit meme des potions de rappel ?
A voir, je sais pas...
0 utilisateur(s) li(sen)t ce sujet
0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)