SALON DES MAKERS
Création de jeux vidéo amateurs
S'inscrire - Se connecter
Accueil - Forums - Articles et tutoriels - Ressources - Les jeux - Rechercher - Aide
[SCRIPT] Créer des armes maudites

 
Poster un nouveau sujet   Répondre au sujet    Salon des makers Index du Forum -> DÉVELOPPEMENT D'UN JEU VIDÉO -> Étape 5 : Programmation -> Rpg Maker
Auteur Message
3dward
Co-Administrateur
Co-Administrateur

Hors ligne

Inscrit le: 06 Juin 2007
Messages: 465
Sexe: Masculin

MessagePosté le: Jeu 10 Avr - 20:18 (2008)    Sujet du message: [SCRIPT] Créer des armes maudites Répondre en citant

----------
De: 3dward
Date de rédaction : Jeudi 10 Avril 2008 - 21:09
Pour quelle(s) version(s) RM: RPG Maker XP
Version 1.0 [Vendredi 11 Avril 2008 - 15:32]
----------

Bonjour à tous, je vous présente aujourd'hui un système d'arme maudites dont je suis l'auteur.

Le système nécessite six modifications, ne vous inquiétez pas, rien de dangereux à celles-ci.

Voici les modifications en question :


À la ligne 32 du script Scene_Title vous avez :
Code:
$game_system = Game_System.new


Ajouter en dessous ceci :
Code:
$armes_maudites = [a,b,c]
$armures_maudites = [a,b,c]



Comment utiliser :

les lettres a, b et c correspondent à l'ID de l'arme ou armure qui est maudite.
Mettez dans $armes_normales toutes les ID des armes maudites séparées par une virgule
et dans $armures_maudites toutes les ID des armures maudites séparées par une virgule.

Pour par exemple avoir les armes 45 et 66 maudites et les armures 66 et 55 on écrira :
Code:
$armes_maudites = [45,66]
$armures_maudites = [66,55]



À la ligne 153 du Script Scene_Equip vous avez :
Code:
 if Input.trigger?(Input::C)


Ajoutez en dessous :
Code:
case @right_window.index

when 0
if $armes_normales.include?(@actor.weapon_id)
update_item
else
$game_system.se_play($data_system.buzzer_se)
return
end

when 1
if $armures_normales.include?(@actor.armor1_id)
update_item
else
$game_system.se_play($data_system.buzzer_se)
return
end

when 2
if $armures_normales.include?(@actor.armor2_id)
update_item
else
$game_system.se_play($data_system.buzzer_se)
return
end

when 3
if $armures_normales.include?(@actor.armor3_id)
update_item
else
$game_system.se_play($data_system.buzzer_se)
return
end

when 4
if $armures_normales.include?(@actor.armor4_id)
update_item
else
$game_system.se_play($data_system.buzzer_se)
return
end

end


À la ligne 82 du script Scene_Save vous avez :
Code:
Marshal.dump($game_player,file)


Ajoutez en dessous :
Code:

Marshal.dump($armes_normales,file)
Marshal.dump($armures_normales,file)

À la ligne 82 du script Scene_Load vous avez :
Code:
$game_player = Marshal.load(file)


Ajoutez en dessous :
Code:
$armes_maudites = Marshal.load(file)
$armures_maudites = Marshal.load(file)


À ligne 57 :
Remplacer
Code:
@states = []

Par
Code:
states


Avant le dernier end (du même script):
Ajouter
Code:
def states
    if $armes_maudites.include?(@weapon_id) or $armures_maudites.include?(@armor1_id)or $armures_maudites.include?(@armor2_id)or $armures_maudites.include?(@armor3_id)or $armures_maudites.include?(@armor4_id)
    @states = [17]
  else
    @states = []

end
end


À la ligne 55 et à la ligne 56 vous avez
Code:
@hp = maxhp
et
Code:
@sp = maxsp

Déplacez ces deux lignes après
Code:
states
.

Le nouveau code est donc le suivant :
Code:
states
@hp = maxhp
@sp = maxsp


Ainsi, les HP et MP maximums sont remis à zéro dès le statut appliqué (dans le cas contraire, les HP et MP restent à la valeur précédente)


À la ligne 37 du script Game_Battler1, vous avez
Code:
@states = []

Changez le pour
Code:
states


Ajoutez avant le dernier end du même script ceci :
Code:
def states
    if $armes_maudites.include?(@weapon_id) or $armures_maudites.include?(@armor1_id)or $armures_maudites.include?(@armor2_id)or $armures_maudites.include?(@armor3_id)or $armures_maudites.include?(@armor4_id)
    @states = [17]
  else
    @states = []

end
end


Dernier conseil : Pour que votre statut soit illimité, mettez sa propriété comme étant de 10.

Une fois ces quelques modifications apportées, vous pourrez profiter pleinement du système d'arme maudite.
Une arme maudite ne pourra pas être retirée, il faudra la désenvouter (par le biais d'un événement ou autre) pour pouvoir le faire.
Elle infligera un statut : le 17ème dans la base de données (car @states = [17]), il est nécessaire de le créer bien entendu avant d'utiliser ce script.
Personnellement, je le nomme "Maudit" et je modifie les caractéristiques pour MaxHp (en %) = 75.
Ainsi la sanction est de 25% de la vie du maudit.

Dernière chose :
Pour désenvouter une arme :



Code:
$armes_maudites.delete(1)


-> l'arme d'ID 1 n'est plus maudite

Code:
$armures_maudites.delete(1)


-> l'armure d'ID 1 n'est plus maudite

Code:
$armes_maudites.push(1)


-> l'arme d'ID 1 est maudite

_________________




Dernière édition par 3dward le Ven 11 Avr - 14:38 (2008); édité 2 fois
no sms
MSN
Publicité






MessagePosté le: Jeu 10 Avr - 20:18 (2008)    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
no sms
ASHKA
Membre
Membre

Hors ligne

Inscrit le: 10 Mar 2008
Messages: 75
Sexe: Masculin
Localisation: - !! Je suis le " LOGOS " donc je suis omnipresent !!

MessagePosté le: Jeu 10 Avr - 22:21 (2008)    Sujet du message: [SCRIPT] Créer des armes maudites Répondre en citant

Hé, c'etait pas une rumeur.
3dward a fini son script d'arme maudite.
Ca, c'est cool !!

ASHKA
no sms
3dward
Co-Administrateur
Co-Administrateur

Hors ligne

Inscrit le: 06 Juin 2007
Messages: 465
Sexe: Masculin

MessagePosté le: Ven 11 Avr - 10:00 (2008)    Sujet du message: [SCRIPT] Créer des armes maudites Répondre en citant

Faut dire que j'ai pris mon temps ^^'
J'avais pas vraiment passé de temps sur RPG Maker ce dernier mois et j'ai décidé de finir au moins un projet ^^'

Si quelqu'un a une idée de système intéressant à faire pour ce qui est des armes et autre, je l'invite à m'en faire part par Message Privé (ou par e-mail ou même dans une conversation Messenger), je suis ouvert à toute proposition.

En cas de problème avec ce système (si quelqu'un le test un jour ^^'), merci de le reporter dans ce topic, je me ferais un plaisir d'y remédier. [En tout cas le script est fonctionnel sur un nouveau projet de mon côté]

Voilà tout ce que j'avais à dire ^^
Et merci Ashka de m'avoir fait rire avec cette rumeur xD [Maintenant démentie :niark:]

-------------------------------------------------
Edit : 15:20

J'ai découvert un petit oubli dans mon boulot :
Voici les nouvelles instructions pour Game_Actor et les instructions à donner à Game_Battler1.


À ligne 57 :
Remplacer
Code:
@states = []

Par
Code:
states


Avant le dernier end (du même script):
Ajouter
Code:
def states
    if $armes_maudites.include?(@weapon_id) or $armures_maudites.include?(@armor1_id)or $armures_maudites.include?(@armor2_id)or $armures_maudites.include?(@armor3_id)or $armures_maudites.include?(@armor4_id)
    @states = [17]
  else
    @states = []

end
end


À la ligne 55 et à la ligne 56 vous avez
Code:
@hp = maxhp
et
Code:
@sp = maxsp

Déplacez ces deux lignes après
Code:
states
.

Le nouveau code est donc le suivant :
Code:
states
@hp = maxhp
@sp = maxsp


Ainsi, les HP et MP maximums sont remis à zéro dès le statut appliqué (dans le cas contraire, les HP et MP restent à la valeur précédente)


À la ligne 37 du script Game_Battler1, vous avez
Code:
@states = []

Changez le pour
Code:
states


Ajoutez avant le dernier end du même script ceci :
Code:
def states
    if $armes_maudites.include?(@weapon_id) or $armures_maudites.include?(@armor1_id)or $armures_maudites.include?(@armor2_id)or $armures_maudites.include?(@armor3_id)or $armures_maudites.include?(@armor4_id)
    @states = [17]
  else
    @states = []

end
end



Dernier conseil : Pour que votre statut soit illimité, mettez sa propriété comme étant de 10.

Bonne journée à tous.
3dward.
_________________


no sms
MSN
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 07:06 (2018)    Sujet du message: [SCRIPT] Créer des armes maudites

no sms
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Salon des makers Index du Forum -> DÉVELOPPEMENT D'UN JEU VIDÉO -> Étape 5 : Programmation -> Rpg Maker
Page 1 sur 1

 
Sauter vers:  

Topherysation L'annuaire des sites web de qualité Partenaires