仮 GM モード:表示制御実装
@@ -45,6 +45,9 @@ | ||
45 | 45 | public static $disable_gerd_enable = true; |
46 | 46 | public static $default_disable_gerd = false; |
47 | 47 | |
48 | + public static $temporary_gm_enable = true; //仮 GM モード | |
49 | + public static $default_temporary_gm = false; | |
50 | + | |
48 | 51 | //身代わり君配役制限 |
49 | 52 | public static $dummy_boy_cast_limit_enable = true; |
50 | 53 | public static $default_dummy_boy_cast_limit = false; |
@@ -7,7 +7,8 @@ | ||
7 | 7 | 'wish_role', 'real_time', 'open_vote', 'settle', 'seal_message', 'open_day', 'necessary_name', |
8 | 8 | 'necessary_trip', 'close_room', |
9 | 9 | 'dummy_boy' => null, |
10 | - 'dummy_boy_selector', 'gm_password', 'gerd', 'disable_gerd', 'dummy_boy_cast_limit', | |
10 | + 'dummy_boy_selector', 'gm_password', 'gerd', 'disable_gerd', 'temporary_gm', | |
11 | + 'dummy_boy_cast_limit', | |
11 | 12 | 'talk' => null, |
12 | 13 | 'wait_morning', 'limit_last_words', 'limit_talk', 'secret_talk', 'no_silence', |
13 | 14 | 'open_cast' => null, |
@@ -5,7 +5,7 @@ | ||
5 | 5 | public static $game_option = []; |
6 | 6 | public static $role_option = []; |
7 | 7 | public static $icon_order = [ |
8 | - 'wish_role', 'real_time', 'dummy_boy', 'gm_login', 'gerd', 'disable_gerd', | |
8 | + 'wish_role', 'real_time', 'dummy_boy', 'gm_login', 'temporary_gm', 'gerd', 'disable_gerd', | |
9 | 9 | 'dummy_boy_cast_limit', 'open_vote', 'settle', 'seal_message', 'open_day', 'necessary_name', |
10 | 10 | 'necessary_trip', 'wait_morning', 'limit_last_words', 'limit_talk', 'secret_talk', 'no_silence', |
11 | 11 | 'not_open_cast', 'auto_open_cast', |
@@ -95,14 +95,8 @@ | ||
95 | 95 | |
96 | 96 | //村作成オプション入力情報ロード (身代わり君関連) |
97 | 97 | private static function LoadPostDummyBoy() { |
98 | - if (RQ::Get()->dummy_boy) { | |
98 | + if (RQ::Get()->gm_login) { | |
99 | 99 | if (false === RQ::Get()->change_room) { |
100 | - self::Stack()->Set('gm_name', Message::DUMMY_BOY); | |
101 | - self::Stack()->Set('gm_password', ServerConfig::PASSWORD); | |
102 | - } | |
103 | - RoomOption::LoadPost('gerd', 'dummy_boy_cast_limit'); | |
104 | - } elseif (RQ::Get()->gm_login) { | |
105 | - if (false === RQ::Get()->change_room) { | |
106 | 100 | self::LoadPostPassword(); |
107 | 101 | self::Stack()->Set('gm_name', Message::GM); |
108 | 102 | self::Stack()->Set('gm_password', RQ::Get()->gm_password); |
@@ -109,6 +103,15 @@ | ||
109 | 103 | } |
110 | 104 | RoomOption::Set(OptionGroup::GAME, 'dummy_boy'); |
111 | 105 | RoomOption::LoadPost('gerd', 'dummy_boy_cast_limit'); |
106 | + } else { | |
107 | + RoomOption::LoadPost('temporary_gm'); //「身代わり君は GM」が OFF なら仮 GM モードを設定可能 | |
108 | + if (RQ::Get()->dummy_boy) { | |
109 | + if (false === RQ::Get()->change_room) { | |
110 | + self::Stack()->Set('gm_name', Message::DUMMY_BOY); | |
111 | + self::Stack()->Set('gm_password', ServerConfig::PASSWORD); | |
112 | + } | |
113 | + RoomOption::LoadPost('gerd', 'dummy_boy_cast_limit'); | |
114 | + } | |
112 | 115 | } |
113 | 116 | |
114 | 117 | //ゲルト君モード無効はゲルト君モードと連動させる |
@@ -7,4 +7,8 @@ | ||
7 | 7 | public function GetCaption() { |
8 | 8 | return '仮 GM モード'; |
9 | 9 | } |
10 | + | |
11 | + public function GetExplain() { | |
12 | + return '最初の入村者が一部のゲームオプションを編集できるようになります'; | |
13 | + } | |
10 | 14 | } |