~ S'évader de la banalité... Et entrer dans l'imaginaire ! ~ |
|
| CMS...? | |
| | Auteur | Message |
---|
Naqqah Maker de Légende Lv 46
Nombre de messages : 3377 Age : 28
| Sujet: CMS...? Mer 03 Déc 2008, 09:02 | |
| Bon, vous allez vous dire que je n'ai pas cherché, mais c'est faux... Je voulais, en voyant le concours que propose Falco, essayer... Mais je veux faire un jeu avec un CMS ( objets à garder, sinon, on balance compétences, équiper et état... Un peu comme AristA mais avec XP... Donc je demande comment est-il possible de faire ça, et si c'est avec script, donnez moi des infos, j'ai jamais touché à ça... Et je demande comment faire pour qu'il neige TOUT LE TEMPS sur une map... Merci !
Merci ! | |
| | | coco Dieu Maker Lv 44
Nombre de messages : 2989 Age : 30
| Sujet: Re: CMS...? Mer 03 Déc 2008, 12:23 | |
| Précise un ^^eu les options que tu veux et celles que tu ne veux pas stp Je te dirais après si c'est faisable en script... ____________ | |
| | | Falco Maker qui quitte vraiment E-m Lv 60
Nombre de messages : 13628 Age : 33
| Sujet: Re: CMS...? Mer 03 Déc 2008, 13:05 | |
| Quel concours ? Celui sur mon site ? Il est pas en rapport avec EM Sinon, si tu veut le faire en event, je vais être franc, laisse tomber pour le moment. Apprends à maitriser les variables, les pictures, les coordonnées, et la tu pourras (c'est dur). Si tu veut le faire en script, y'en a plein sur le net Y'a même le menu Kingdom Hearts graphiquement remixé par moi même en exclu sur un fameux site commençant par R et finissant par MA ____________ "Listen now, you don't understand That's not the point of Christmas land"
| |
| | | Relm ---Fantôme--- Lv 0
Nombre de messages : 40942 Age : 33
| Sujet: Re: CMS...? Mer 03 Déc 2008, 13:10 | |
| Naqqah, tu es vraiment à tes débuts sur RPG maker : problème en mapping, non connaissance des events de base (d'ailleurs pour la neige fais un event en parrallèle et mets la commande pour la neige avec un Wait de 1 sec après, ou 60 frames. Je t'avoue que c'est quelque chose de très simple à la base.) Tout ça pour te dire que faire un CMS ... je te le déconseille. J'ai du attendre quelques années de making pour décider d'en faire un et me sentir à l'aise. Ca veut pas dire que c'est si dur mais faut pas mettre la charrue avant les boeufs ! En tout cas, personnelement avant de me lancer dans ça je ferrai en sorte de savoir bien manipuler l'engin tel qu'il est conçu. Sinon pour retirer des commandes, 2K3 le fait très bien sans script --> faut juste les retirer manuellement dans le menu system des databases, rien de plus simple. Pour XP, VX c'est simple aussi mais faut les retirer dans le script. Où ça exactement ? Je ne sais pas. Mais avant de vouloir retirer des trucs, tu as trouvé ton idée sur ton CMS ? A quoi il sert ? Que peut-on faire avec ? etc etc ____________ - Alex RE a écrit:
- C'est comme utiliser une hache pour trancher du pain. Je suis peut-être trop vieux pour ça.
| |
| | | Naqqah Maker de Légende Lv 46
Nombre de messages : 3377 Age : 28
| Sujet: Re: CMS...? Mer 03 Déc 2008, 16:10 | |
| Oui, en fait, déjà, pour la neige, j'avais fait un truc semblable avec le fog, mais à la sauvegarde, ça loupait et plus de fog... Donc si c'est ce dont quoi je pense, c'est mort... Sinon, le genre de jeu ne nécessite pas les états, équipements, compétences etc... puisqu'il n'y a pas de combat... C'est un jeu simple, avec une "énigme", où l'on incarne un... détective ( ? ), avec plusieurs fins ( exactement, je pense savoir comment faire ça... faut utiliser les variables, pour ce système... ). Donc pour le CMS, il me faudrait : - objets - sauvegarder - quitter En fait, le menu servira à sauvegarder et à vérifier les notes, données prises lors de certaines discussions... Falco, je sais que cela n'a aucun rapport avec EM, mais si je peux faire un jeu peu long, savoir à quel point il intéresse... | |
| | | coco Dieu Maker Lv 44
Nombre de messages : 2989 Age : 30
| Sujet: Re: CMS...? Mer 03 Déc 2008, 16:19 | |
| Je t'ai fait des pitis scripts : Remplace Scene_Menu par : - Spoiler:
- Code:
-
#============================================================================== # ■ Scene_Menu #------------------------------------------------------------------------------ # メニュー画面の処理を行うクラスです。 #==============================================================================
class Scene_Menu #-------------------------------------------------------------------------- # ● オブジェクト初期化 # menu_index : コマンドのカーソル初期位置 #-------------------------------------------------------------------------- def initialize(menu_index = 0) @menu_index = menu_index end #-------------------------------------------------------------------------- # ● メイン処理 #-------------------------------------------------------------------------- def main # コマンドウィンドウを作成 s1 = $data_system.words.item s2 = "Sauvegarder" s3 = "Quitter" @command_window = Window_Command.new(160, [s1, s2, s3]) @command_window.index = @menu_index # パーティ人数が 0 人の場合 if $game_party.actors.size == 0 # アイテム、スキル、装備、ステータスを無効化 @command_window.disable_item(0) @command_window.disable_item(1) @command_window.disable_item(2) @command_window.disable_item(3) end # セーブ禁止の場合 if $game_system.save_disabled # セーブを無効にする @command_window.disable_item(4) end # プレイ時間ウィンドウを作成 @playtime_window = Window_PlayTime.new @playtime_window.x = 0 @playtime_window.y = 224 # 歩数ウィンドウを作成 @steps_window = Window_Steps.new @steps_window.x = 0 @steps_window.y = 320 # ゴールドウィンドウを作成 @gold_window = Window_Gold.new @gold_window.x = 0 @gold_window.y = 416 # ステータスウィンドウを作成 @status_window = Window_MenuStatus.new @status_window.x = 160 @status_window.y = 0 # トランジション実行 Graphics.transition # メインループ loop do # ゲーム画面を更新 Graphics.update # 入力情報を更新 Input.update # フレーム更新 update # 画面が切り替わったらループを中断 if $scene != self break end end # トランジション準備 Graphics.freeze # ウィンドウを解放 @command_window.dispose @playtime_window.dispose @steps_window.dispose @gold_window.dispose @status_window.dispose end #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- def update # ウィンドウを更新 @command_window.update @playtime_window.update @steps_window.update @gold_window.update @status_window.update # コマンドウィンドウがアクティブの場合: update_command を呼ぶ if @command_window.active update_command return end # ステータスウィンドウがアクティブの場合: update_status を呼ぶ if @status_window.active update_status return end end #-------------------------------------------------------------------------- # ● フレーム更新 (コマンドウィンドウがアクティブの場合) #-------------------------------------------------------------------------- def update_command # B ボタンが押された場合 if Input.trigger?(Input::B) # キャンセル SE を演奏 $game_system.se_play($data_system.cancel_se) # マップ画面に切り替え $scene = Scene_Map.new return end # C ボタンが押された場合 if Input.trigger?(Input::C) # パーティ人数が 0 人で、セーブ、ゲーム終了以外のコマンドの場合 if $game_party.actors.size == 0 and @command_window.index < 4 # ブザー SE を演奏 $game_system.se_play($data_system.buzzer_se) return end # コマンドウィンドウのカーソル位置で分岐 case @command_window.index when 0 # アイテム # 決定 SE を演奏 $game_system.se_play($data_system.decision_se) # アイテム画面に切り替え $scene = Scene_Item.new when 1 # セーブ # セーブ禁止の場合 if $game_system.save_disabled # ブザー SE を演奏 $game_system.se_play($data_system.buzzer_se) return end # 決定 SE を演奏 $game_system.se_play($data_system.decision_se) # セーブ画面に切り替え $scene = Scene_Save.new when 2 # ゲーム終了 # 決定 SE を演奏 $game_system.se_play($data_system.decision_se) # ゲーム終了画面に切り替え $scene = Scene_End.new end return end end #-------------------------------------------------------------------------- # ● フレーム更新 (ステータスウィンドウがアクティブの場合) #-------------------------------------------------------------------------- def update_status # B ボタンが押された場合 if Input.trigger?(Input::B) # キャンセル SE を演奏 $game_system.se_play($data_system.cancel_se) # コマンドウィンドウをアクティブにする @command_window.active = true @status_window.active = false @status_window.index = -1 return end # C ボタンが押された場合 end end
Remplace Scene_Load par : - Spoiler:
- Code:
-
#============================================================================== # ■ Scene_Load #------------------------------------------------------------------------------ # ロード画面の処理を行うクラスです。 #==============================================================================
class Scene_Load < Scene_File #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- def initialize # テンポラリオブジェクトを再作成 $game_temp = Game_Temp.new # タイムスタンプが最新のファイルを選択 $game_temp.last_file_index = 0 latest_time = Time.at(0) for i in 0..3 filename = make_filename(i) if FileTest.exist?(filename) file = File.open(filename, "r") if file.mtime > latest_time latest_time = file.mtime $game_temp.last_file_index = i end file.close end end super("Charger quelle partie?") end #-------------------------------------------------------------------------- # ● 決定時の処理 #-------------------------------------------------------------------------- def on_decision(filename) # ファイルが存在しない場合 unless FileTest.exist?(filename) # ブザー SE を演奏 $game_system.se_play($data_system.buzzer_se) return end # ロード SE を演奏 $game_system.se_play($data_system.load_se) # セーブデータの書き込み file = File.open(filename, "rb") read_save_data(file) file.close # BGM、BGS を復帰 $game_system.bgm_play($game_system.playing_bgm) $game_system.bgs_play($game_system.playing_bgs) # マップを更新 (並列イベント実行) $game_map.update # マップ画面に切り替え $scene = Scene_Map.new end #-------------------------------------------------------------------------- # ● キャンセル時の処理 #-------------------------------------------------------------------------- def on_cancel # キャンセル SE を演奏 $game_system.se_play($data_system.cancel_se) # タイトル画面に切り替え $scene = Scene_Title.new end #-------------------------------------------------------------------------- # ● セーブデータの読み込み # file : 読み込み用ファイルオブジェクト (オープン済み) #-------------------------------------------------------------------------- def read_save_data(file) # セーブファイル描画用のキャラクターデータを読み込む characters = Marshal.load(file) # プレイ時間計測用のフレームカウントを読み込む Graphics.frame_count = Marshal.load(file) # 各種ゲームオブジェクトを読み込む $game_system = Marshal.load(file) $game_switches = Marshal.load(file) $game_variables = Marshal.load(file) $game_self_switches = Marshal.load(file) $game_screen = Marshal.load(file) $game_actors = Marshal.load(file) $game_party = Marshal.load(file) $game_troop = Marshal.load(file) $game_map = Marshal.load(file) $game_player = Marshal.load(file) # マジックナンバーがセーブ時と異なる場合 # (エディタで編集が加えられている場合) if $game_system.magic_number != $data_system.magic_number # マップをリロード $game_map.setup($game_map.map_id) $game_player.center($game_player.x, $game_player.y) end # パーティメンバーをリフレッシュ $game_party.refresh end end
____________ | |
| | | coco Dieu Maker Lv 44
Nombre de messages : 2989 Age : 30
| Sujet: Re: CMS...? Mer 03 Déc 2008, 16:20 | |
| Double post paske mes messages sont trop longs [/Blizzard] Et enfin, remplace Scene_Save par : - Spoiler:
- Code:
-
#============================================================================== # ■ Scene_Save #------------------------------------------------------------------------------ # セーブ画面の処理を行うクラスです。 #==============================================================================
class Scene_Save < Scene_File #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- def initialize super("Sauvegarder dans quel fichier?") end #-------------------------------------------------------------------------- # ● 決定時の処理 #-------------------------------------------------------------------------- def on_decision(filename) # セーブ SE を演奏 $game_system.se_play($data_system.save_se) # セーブデータの書き込み file = File.open(filename, "wb") write_save_data(file) file.close # イベントから呼び出されている場合 if $game_temp.save_calling # セーブ呼び出しフラグをクリア $game_temp.save_calling = false # マップ画面に切り替え $scene = Scene_Map.new return end # メニュー画面に切り替え $scene = Scene_Menu.new(1) end #-------------------------------------------------------------------------- # ● キャンセル時の処理 #-------------------------------------------------------------------------- def on_cancel # キャンセル SE を演奏 $game_system.se_play($data_system.cancel_se) # イベントから呼び出されている場合 if $game_temp.save_calling # セーブ呼び出しフラグをクリア $game_temp.save_calling = false # マップ画面に切り替え $scene = Scene_Map.new return end # メニュー画面に切り替え $scene = Scene_Menu.new(4) end #-------------------------------------------------------------------------- # ● セーブデータの書き込み # file : 書き込み用ファイルオブジェクト (オープン済み) #-------------------------------------------------------------------------- def write_save_data(file) # セーブファイル描画用のキャラクターデータを作成 characters = [] for i in 0...$game_party.actors.size actor = $game_party.actors[i] characters.push([actor.character_name, actor.character_hue]) end # セーブファイル描画用のキャラクターデータを書き込む Marshal.dump(characters, file) # プレイ時間計測用のフレームカウントを書き込む Marshal.dump(Graphics.frame_count, file) # セーブ回数を 1 増やす $game_system.save_count += 1 # マジックナンバーを保存する # (エディタで保存するたびにランダムな値に書き換えられる) $game_system.magic_number = $data_system.magic_number # 各種ゲームオブジェクトを書き込む Marshal.dump($game_system, file) Marshal.dump($game_switches, file) Marshal.dump($game_variables, file) Marshal.dump($game_self_switches, file) Marshal.dump($game_screen, file) Marshal.dump($game_actors, file) Marshal.dump($game_party, file) Marshal.dump($game_troop, file) Marshal.dump($game_map, file) Marshal.dump($game_player, file) end end
Dis moi si tu veux modifier autres choses... ____________ | |
| | | Naqqah Maker de Légende Lv 46
Nombre de messages : 3377 Age : 28
| Sujet: Re: CMS...? Mer 03 Déc 2008, 17:03 | |
| Euuuh... C'est génial ! Mais autre... Je ne l'ai pas précisé, mais il ne me faut ni HP, ni MP, ni classes, ni level, ni le E en-dessous de LV 1... Merci Coco ! | |
| | | coco Dieu Maker Lv 44
Nombre de messages : 2989 Age : 30
| Sujet: Re: CMS...? Mer 03 Déc 2008, 19:36 | |
| Remplace Window_MenuStatus par : - Spoiler:
- Code:
-
#============================================================================== # ■ Window_MenuStatus #------------------------------------------------------------------------------ # メニュー画面でパーティメンバーのステータスを表示するウィンドウです。 #==============================================================================
class Window_MenuStatus < Window_Selectable #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- def initialize super(0, 0, 480, 480) self.contents = Bitmap.new(width - 32, height - 32) self.contents.font.name = $fontface self.contents.font.size = $fontsize refresh self.active = false self.index = -1 end #-------------------------------------------------------------------------- # ● リフレッシュ #-------------------------------------------------------------------------- def refresh self.contents.clear @item_max = $game_party.actors.size for i in 0...$game_party.actors.size x = 64 y = i * 116 actor = $game_party.actors[i] draw_actor_graphic(actor, x - 40, y + 80) draw_actor_name(actor, x, y) end end #-------------------------------------------------------------------------- # ● カーソルの矩形更新 #-------------------------------------------------------------------------- def update_cursor_rect if @index < 0 self.cursor_rect.empty else self.cursor_rect.set(0, @index * 116, self.width - 32, 96) end end end
Voila ____________ | |
| | | Naqqah Maker de Légende Lv 46
Nombre de messages : 3377 Age : 28
| Sujet: Re: CMS...? Mer 03 Déc 2008, 20:33 | |
| Waaaah ! Trooop bien ! Merci Coco ! Ces scripts me servent trop ! ( Je pense te mettre dans mes crédits... En même temps, je mettrai tout E-M, avec des remerciements... Mais chuuuut... C'est un secret... | |
| | | coco Dieu Maker Lv 44
Nombre de messages : 2989 Age : 30
| Sujet: Re: CMS...? Mer 03 Déc 2008, 20:47 | |
| Si t'as besoin d'autres choses, n'hésite pas ____________ | |
| | | Contenu sponsorisé
| Sujet: Re: CMS...? | |
| |
| | | | CMS...? | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |
|