From b8db8f2c4042ac655fbce6b936b8addbb0672095 Mon Sep 17 00:00:00 2001 From: dusk Date: Sat, 31 Jan 2026 23:35:50 +0100 Subject: [PATCH] feat: Add first three chapters of Watanagashi --- replacements/248cc760eb112d1fac1e42cdc4e5ef6f | 109 ------------------ replacements/96432fa895dbccc686e83cd3b1b6eacf | 12 +- src/flow.py | 82 ++++++------- 3 files changed, 54 insertions(+), 149 deletions(-) delete mode 100644 replacements/248cc760eb112d1fac1e42cdc4e5ef6f diff --git a/replacements/248cc760eb112d1fac1e42cdc4e5ef6f b/replacements/248cc760eb112d1fac1e42cdc4e5ef6f deleted file mode 100644 index 1f96cd3..0000000 --- a/replacements/248cc760eb112d1fac1e42cdc4e5ef6f +++ /dev/null @@ -1,109 +0,0 @@ -# Exclude --12432 --2415 -# Misc -12:caption"Onikakushi-hen" -23:rmenu "Save",save,"Load",load,"Skip",skip,"Hide",windowerase,"Log",lookback,"Exit",reset -#TIPSを入手しました -23413: lsp NEWTIPSMSG,":s#FFFFFFNEW TIPS AVAILABLE",177,112 -24017: mov $TIPS_001,"      うちって学年混在?     " -24018: mov $TIPS_002,"      うちって制服自由?     " -24019: mov $TIPS_003,"        前原屋敷        " -24020: mov $TIPS_004,"     ダム現場のバラバラ殺人    " -24021: mov $TIPS_005,"       雛見沢ダム計画      " -24022: mov $TIPS_006,"       週刊誌の特集記事     " -24023: mov $TIPS_007,"    レナってどういう名前だよ?   " -24024: mov $TIPS_008,"         回覧板        " -24025: mov $TIPS_009,"    ダム推進派の夫婦の転落事故   " -24026: mov $TIPS_010,"      古手神社の神主の病死    " -24027: mov $TIPS_011,"        主婦殺人事件      " -24028: mov $TIPS_012,"        無線記録        " -24029: mov $TIPS_013,"       犯人は4人以上?     " -24030: mov $TIPS_014,"        捜査メモ        " -24031: mov $TIPS_015,"        本部長通達       " -24032: mov $TIPS_016,"    自殺を誘発するクスリは?    " -24033: mov $TIPS_017,"         脅迫         " -24034: mov $TIPS_018,"       元気ないね。       " -24035: mov $TIPS_019,"       二重人格???      " -24036: mov $TIPS_020,"      セブンスマートにて     " -# onik_000 -1202:「ゴ・メ・ン・ナ・サ・イ!sd!w800って言ってみな。@言わないならぁ……!」@ -1630:「…圭ちゃんは食らうの初めてだよね。@…今日のはまだ!s100…甘い方…。」!sd -1823:「け!w300……圭ちゃんがしてよ……!s300。おじさんは応援してる……。」!sd@ -1991:「それで、今の人は入江診療所の看護婦のみよさん。@趣味は野鳥の観察と撮影だって。」@ -2373:「…ぇ…え?@!s200……ぇぇと!sd………その!w1000………は、恥ずかしいな……教えなきゃだめ?………どうしても?」@ -2404: -2406: どしゃぁあぁッ!!!@ -2417: 奇声を発しながら次々とりんごを…俺の口に…!d200…!d200次々!d200…!d200…!d200りん!d200…!d200…!d200ご………!d200…¥ -2474:「…え、……えぇえぇえぇぇぇえぇえッ?!?!@!sd 逆転負けぇえぇッ?!?!」@ -2813:「きゃ…!d200…!d200きゃ…、花も恥らう乙女になんて口の聞き方〜ッ?!?!」@ -2964:!s250……まさか!sd¥ -2993:「くっくっく!@ 圭ちゃんの手札を右から言うぜ?@ 3、!d4004、!d4009、!d400J、!d400Q。」@ -3013:!s200「お…鬼だ…!sdこいつらは鬼だ…!@ レナ…は…鬼じゃないよな…?」@ -3030: 多分、クラス全員が無人島で自爆首輪付きで殺し合いなんて状況下では水を得た魚と化すだろうな。@ -3316:!s200……俺の……!sd逆転勝利だッッ!!!!!!!/ -3394:!s200……………!sdお、@ -3410:「!s150や、や、やめろおぉおおぉおぉ……ぉ……ぉ…!!!」!sd@ -4105:「え?@!s100……あ。」!sd¥ -4288: っと!@!s200………お!sd、誰かが下に来るぞ。@ -4989:「…うんうん……なんでもしまっちゃうよ☆@ はぅ……かぁいい…。」/ -5090:「セ、センスねぇーッ!!@ なんだよそのネーミングは!!」@ -5300:「9!@ いないですの?!!w400 8!!w300 7!@ あがりでございます!!」/ -5426:「……撫でた。!w400……これで!w500……いい…?!」!sd@ -# 5594: '!s100「あ、………!sdな、なんだ……あははは……は。」@ -5792:……くっくっく!!sd うつけ者めッ!!!@ -# 5966:「ぎゃぎゃ!s250………!s80ぎゃああぁあぁあぁあぁああッ!!!」!sd¥ -6224: とりとめのないおしゃべり。@ -# onik_009 -6645:quakey 5,200 -6646:………あれ?@ 圭一くんと梨花ちゃんは…なんでスタートしないんだろ? しないんだろ?」@ -6647: 魅音と沙都子は猛ダッシュで会場に散ったが、俺と梨花ちゃんは焦る様子もなく、ただ立ったままだ。¥ -7422:!s200……!sdだが……あと1発ではどう考えても!s250………!sd無理かッ!¥ -8741:「説明書も英語ですけどね。@…ルールはそう難しくはありませんのよ!」@ -9542:「凶器はロープで、犯行現場は!w300……う〜ん!w300………ラウンジ!!!」@ -10107:「ごめん!@!s100………!sdよく知らないの。」@ -10824: 看板には「入江診療所」とあり、割と綺麗に書かれていた。¥ -11564: 大石さんが俺にしている話……!s200!sdそれは毎年起こるオヤシロさまの祟りは個々の事件でなく、@全て関連した事件であり、……!s200!sdしかもそれは複数犯で雛見沢に潜伏しているかもしれない……というものだ。@ -11928: じゃあ……!俺がいつも通りに生活するなら……!s400!sd何も危害を加えない……!w800ということなのか…?@ -12086: つまりレナは……!w400私たちの意思は伝わったかな?!w600……そう言いたいのだろうか…。¥ -12091:!s100「…………………………!sd圭一くん?」@ -12495: …俺を完全な方法で「消し去る」までの………!w1000時間稼ぎ。@ -12840:“私、前原圭一は命を狙われています”¥ -13121: 轢き逃げとかそういうのじゃなくて……!sd今の車、!w1000……俺をはねようとしてたんじゃないのか…?¥ -14076:!s50「おおぉぉおおぉおおぉおッ!!!!!」¥ -14097:!s50「うッおおぉおおおおぉおおぉおおおぉッッ!!!」¥ -14636:!s100「……………………!sdなら、…仕方ないかな。」@ -14673: 大根、にんじん、ごぼうにジャガイモ、パワフルな食感とボリューム……!sdあぁ…その味噌汁、最高だよ…。¥ -14727: レナは…………!s500両親が不在であることを………!sd知っている?@ -14893:「うぅん、…!s200*******。」!sd@ -14949:「だから。@……レナが。@圭一君の。@後ろに。@ずっとくっついてたの。@!s250…うふふふ。」!sd@ -15034:「帰れ帰れ!!!w500!s100帰れぇええぇえぇええッ!!」!sd@ -15248:!s300「………………はい。」!sd@ -15259:!s500「……………オヤシロさま、!w1000………ですよ。」!sd@ -15261:「…………オヤシロさまの祟りって、!w500本当にあるのかな!s400……なんて、まぁ…はっはっは…!」!sd@ -# 15696:!s200「け…圭ちゃん……!sdそんなのって……、」¥ -# 15748:!s300「………ぅ………!sdひどいよ………圭ちゃん………、」@ -15758: その背後に、ぼそりと。@…本当にぼそりと、その独り言が聞こえた。¥ -16008:「信じないよね。@!s200あはははははははははははははははは。」!sd¥ -16018:「……待ってよ圭一くん。@!s100あはははははははははははははははははははははは。」!sd@ -16075:「お話しようよ圭一くん。@………お話!w800お話。……!s200あはははははははははははははは。」!sd@ -16081:「嘘だッ!!!! !s200あははははははははははははは。」!sd¥ -16131: もう人が“転校”するところは見たくないの。!s200あははははははははははははは。」!sd¥ -16146:「悩みがなくなればきっと圭一くんも元通り。@みんなとも仲良しに戻れて、また楽しく部活ができるよ。@今度は一緒に組んで魅ぃちゃんをやっつけようね。!s200あはははははははははははははははは。」!sd@ -16152: また一緒に宝探しに行きたいね。@今度はお弁当も作っていくよ。@何なら今から宝探しでもいいよ。@行こうよ一緒にダム現場。@見つけたばかりのかぁいいの、圭一くんにも見せてあげるね。@きっと圭一くんも気に入るよ。!s200あははははははははははははは。」!sd¥ -16192:「何がこわいのかな…?@ 怯えるなんて圭一くんらしくないよ? !s200あははははははははははははははははははははは。」!sd@ -16217:「言ったよ。@…悟史くんは“!w500転校”!sd!w800したの。」@ -16280:!s200あはははははははははははははははははははははははは。!sd@ -16641:!s200「……あははははははははははははははははははははは。」!sd@ -# 16665:!s200「あはははははははははははははははははははははははははははははははははははははははははははははははははははははは……、」!sd¥ -# 21545:!s150…………………………………!s50好きだった。!w3000 -# onik_015_2 -17172:「映画の監督とか。@工事現場の監督とか。!w800!s200あははははははははははははははははは。」!sd¥ -17205:「あはははは。監督は監督さんだよ。!s200あははははははははははははははははは。」!sd@ -# 17208:!s150「あはははははははははははははははははははははははははははははははは…」!sd¥ -# 17213:!s150「あははははははははははははははははははははははは。」!sd¥ -# 17235:!s200「あははははははははははははははははははははははははははは。」!sd¥ -# onik_tips_14 -22657:・歯型から都内歯科へ照合@ > 警視庁へ@ -22658:・顔写真の送付@ > 警視庁へ@ -22665:・入江診療所に勤務の看護婦@ diff --git a/replacements/96432fa895dbccc686e83cd3b1b6eacf b/replacements/96432fa895dbccc686e83cd3b1b6eacf index 1164e80..674f5ca 100644 --- a/replacements/96432fa895dbccc686e83cd3b1b6eacf +++ b/replacements/96432fa895dbccc686e83cd3b1b6eacf @@ -1,5 +1,5 @@ # Misc -15:caption"Onikakushi-hen" +15:caption "Higurashi When They Cry" 26:rmenu "Save",save,"Load",load,"Skip",skip,"Hide",windowerase,"Log",lookback,"Exit",reset 2217:「け!w300……圭ちゃんがしてよ……!s300。おじさんは応援してる……。」!sd 2761:「…ぇ…え?@!s200……ぇぇと!sd………その!w1000………は、恥ずかしいな……教えなきゃだめ?………どうしても?」@ @@ -32,3 +32,13 @@ 12755: 差し入れのおはぎ、ちゃんと食べてくれなかったのー?」@ ちゃんと食べたからこの様子なんだよ…。¥ 12756:言葉が喉のそこまで出掛かった。¥ 12813: …俺を完全な方法で「消し去る」までの………!w1000時間稼ぎ。@ +21534:「味なんかはどうでもいいんだ圭一!@な〜…!s200いいだろう〜☆」!sd ……そう。@ +21536:;……そう。@ +21674:「……!s400ほ〜〜〜!!sdそれはご苦労さんなことで。」@ 俺の中の緊張が瞬時に解けていく。@ +21675:; 俺の中の緊張が瞬時に解けていく。@ +22733:「考えろ前原圭一!!@ 考えるんだ前原圭一!!@ カレーを作る方法じゃない、勝負に勝つ方法をだ…ッ!!!@…………むむむ……!s300かぁああぁあぁあッ!!!!」!s0 一手思いつく。!sd/ +22751:; 一手思いつく。@ +22934:「とても簡単なことなんですよ。@…カレーもおにぎりも、!s0…お米をおいしく食べるための知恵なんですッ!!!!」!sd/ +22938:;」\ +23078:「カレーはこの世で一番尊くて神聖な素晴らしい料理です。@それとおにぎりを同一扱いするなんて断固許せません。@いいですか?@!s0カ!w100レ!w100ー!w100は!w100四!w100大!w100河!w100川!w100文!w100明!w100に!w100匹!w100敵!w100す!w100る!w100第!w100五!w100の!w100文!w100明!w100と!w100し!w100て!w100古!w100代!w100イ!w100ン!w100ド!w100に!w100生!w100ま!w100れ!w100、!w100ア!w100シ!w100ョ!w100カ!w100王!w100の!w100時!w100代!w100に!w100カ!w100ピ!w100ラ!w100城!w100で!w100シ!w100ャ!w100カ!w100の!w100生!w100誕!w100に!w100万!w100国!w100食!w100文!w100化!w100博!w100覧!w100会!w100が!w100絶!w100賛!w100し!w100て!w100ミ!w100シ!w100ュ!w100ラ!w100ン!w100ぐ!w100る!w100ぐ!w100る!w100エ!w100ッ!w100フ!w100ェ!w100ル!w100塔!w100す!w100ら!w100も!w100カ!w100レ!w100ー!w100漬!w100け!w100を!w100ぐ!w100つ!w100ぐ!w100つ!w100煮!w100込!w100ん!w100で!w100タ!w100ー!w100メ!w100リ!w100ッ!w100ク!w100が!w100寝!w100て!w100も!w100覚!w100め!w100て!w100も!w100カ!w100レ!w100ー!w100カ!w100レ!w100ー!w100カ!w100レ!w100ー!w100カ!w100レ!w100ー!w100……」!sd「…ちょっと圭一さん!¥ +23087: 何をふらふらしてますのー!!@ 後片付けもお料理の一部ですのよー!!」@ diff --git a/src/flow.py b/src/flow.py index af20004..382c453 100644 --- a/src/flow.py +++ b/src/flow.py @@ -7,46 +7,50 @@ class CsvEntry(): self.start = start self.end = end +# Name of section in Nscripter, name of Unity script file, dialogue line start, dialogue line end (OutputLine()) onik = [ - CsvEntry('Onikakusi.csv', 'onik_000.txt', 0, 48), - CsvEntry('day1.csv', 'onik_001.txt', 0, 663), - CsvEntry('day2.csv', 'onik_002.txt', 0, 520), - CsvEntry('day3.csv', 'onik_003.txt', 0, 647), - CsvEntry('day4.csv', 'onik_004.txt', 0, 611), - CsvEntry('day5.csv', 'onik_005.txt', 0, 677), - CsvEntry('Onikakusi_day09_01.csv', 'onik_009.txt', 0, 913), - CsvEntry('Onikakusi_day09_02.csv', 'onik_009_02.txt', 0, 414), - CsvEntry('Onikakusi_day10.csv', 'onik_010.txt', 0, 655), - CsvEntry('Onikakusi_day11.csv', 'onik_011.txt', 0, 747), - CsvEntry('Onikakusi_day12.csv', 'onik_012.txt', 0, 792), - CsvEntry('Onikakusi_day13.csv', 'onik_013.txt', 0, 684), - CsvEntry('Onikakusi_day14_01.csv', 'onik_014.txt', 0, 629), - CsvEntry('Onikakusi_day14_02.csv', 'onik_014_02.txt', 0, 1067), - CsvEntry('Onikakusi_day15_01.csv', 'onik_015.txt', 0, 1027), - CsvEntry('Onikakusi_day15_02.csv', 'onik_015_02.txt', 0, 688), - CsvEntry('Keiiti_Last.csv', 'onik_015_03.txt', 0, 206), - CsvEntry("Opening.csv", 'onik_op.txt', 0, 56), - CsvEntry("Sub_Tips_001.csv", 'onik_tips_01.txt', 0, 100), - CsvEntry("Sub_Tips_002.csv", 'onik_tips_02.txt', 0, 55), - CsvEntry("Sub_Tips_003.csv", 'onik_tips_03.txt', 0, 49), - CsvEntry("Sub_Tips_004.csv", 'onik_tips_04.txt', 0, 13), - CsvEntry("Sub_Tips_005.csv", 'onik_tips_05.txt', 0, 27), - CsvEntry("Sub_Tips_006.csv", 'onik_tips_06.txt', 0, 57), - CsvEntry("Sub_Tips_007.csv", 'onik_tips_07.txt', 0, 91), - CsvEntry("Sub_Tips_008.csv", 'onik_tips_08.txt', 0, 19), - CsvEntry("Sub_Tips_009.csv", 'onik_tips_09.txt', 0, 7), - CsvEntry("Sub_Tips_010.csv", 'onik_tips_10.txt', 0, 4), - CsvEntry("Sub_Tips_011.csv", 'onik_tips_11.txt', 0, 0), - CsvEntry("Sub_Tips_012.csv", 'onik_tips_12.txt', 0, 19), - CsvEntry("Sub_Tips_013.csv", 'onik_tips_13.txt', 0, 69), - CsvEntry("Sub_Tips_014.csv", 'onik_tips_14.txt', 0, 40), - CsvEntry("Sub_Tips_015.csv", 'onik_tips_15.txt', 0, 25), - CsvEntry("Sub_Tips_016.csv", 'onik_tips_16.txt', 0, 69), - CsvEntry("Sub_Tips_017.csv", 'onik_tips_17.txt', 0, 99), - CsvEntry("Sub_Tips_018.csv", 'onik_tips_18.txt', 0, 38), - CsvEntry("Sub_Tips_019.csv", 'onik_tips_19.txt', 0, 24), - CsvEntry("Sub_Tips_020.csv", 'onik_tips_20.txt', 0, 132), - CsvEntry("Sub_Tips_099.csv", 'onik_015_03.txt', 207, 284), + CsvEntry('Onikakusi.csv', '1/onik_000.txt', 0, 48), + CsvEntry('day1.csv', '1/onik_001.txt', 0, 663), + CsvEntry('day2.csv', '1/onik_002.txt', 0, 520), + CsvEntry('day3.csv', '1/onik_003.txt', 0, 647), + CsvEntry('day4.csv', '1/onik_004.txt', 0, 611), + CsvEntry('day5.csv', '1/onik_005.txt', 0, 677), + CsvEntry('Onikakusi_day09_01.csv', '1/onik_009.txt', 0, 913), + CsvEntry('Onikakusi_day09_02.csv', '1/onik_009_02.txt', 0, 414), + CsvEntry('Onikakusi_day10.csv', '1/onik_010.txt', 0, 655), + CsvEntry('Onikakusi_day11.csv', '1/onik_011.txt', 0, 747), + CsvEntry('Onikakusi_day12.csv', '1/onik_012.txt', 0, 792), + CsvEntry('Onikakusi_day13.csv', '1/onik_013.txt', 0, 684), + CsvEntry('Onikakusi_day14_01.csv', '1/onik_014.txt', 0, 629), + CsvEntry('Onikakusi_day14_02.csv', '1/onik_014_02.txt', 0, 1067), + CsvEntry('Onikakusi_day15_01.csv', '1/onik_015.txt', 0, 1027), + CsvEntry('Onikakusi_day15_02.csv', '1/onik_015_02.txt', 0, 688), + CsvEntry('Keiiti_Last.csv', '1/onik_015_03.txt', 0, 206), + CsvEntry("Opening.csv", '1/onik_op.txt', 0, 56), + CsvEntry("Sub_Tips_001.csv", '1/onik_tips_01.txt', 0, 100), + CsvEntry("Sub_Tips_002.csv", '1/onik_tips_02.txt', 0, 55), + CsvEntry("Sub_Tips_003.csv", '1/onik_tips_03.txt', 0, 49), + CsvEntry("Sub_Tips_004.csv", '1/onik_tips_04.txt', 0, 13), + CsvEntry("Sub_Tips_005.csv", '1/onik_tips_05.txt', 0, 27), + CsvEntry("Sub_Tips_006.csv", '1/onik_tips_06.txt', 0, 57), + CsvEntry("Sub_Tips_007.csv", '1/onik_tips_07.txt', 0, 91), + CsvEntry("Sub_Tips_008.csv", '1/onik_tips_08.txt', 0, 19), + CsvEntry("Sub_Tips_009.csv", '1/onik_tips_09.txt', 0, 7), + CsvEntry("Sub_Tips_010.csv", '1/onik_tips_10.txt', 0, 4), + CsvEntry("Sub_Tips_011.csv", '1/onik_tips_11.txt', 0, 0), + CsvEntry("Sub_Tips_012.csv", '1/onik_tips_12.txt', 0, 19), + CsvEntry("Sub_Tips_013.csv", '1/onik_tips_13.txt', 0, 69), + CsvEntry("Sub_Tips_014.csv", '1/onik_tips_14.txt', 0, 40), + CsvEntry("Sub_Tips_015.csv", '1/onik_tips_15.txt', 0, 25), + CsvEntry("Sub_Tips_016.csv", '1/onik_tips_16.txt', 0, 69), + CsvEntry("Sub_Tips_017.csv", '1/onik_tips_17.txt', 0, 99), + CsvEntry("Sub_Tips_018.csv", '1/onik_tips_18.txt', 0, 38), + CsvEntry("Sub_Tips_019.csv", '1/onik_tips_19.txt', 0, 24), + CsvEntry("Sub_Tips_020.csv", '1/onik_tips_20.txt', 0, 132), + CsvEntry("Sub_Tips_099.csv", '1/onik_015_03.txt', 207, 284), + CsvEntry("Watanagasi.csv", '2/wata_001.txt', 0, 963), + CsvEntry("Watanagasi_day2.csv", '2/wata_002.txt', 0, 919), + CsvEntry("Watanagasi_day3.csv", '2/wata_003.txt', 0, 1064), ] # "gamestart" : [ # 'onik_000.txt',