Mercurial > otakunoraifu
comparison scn2k/scn2k_grp.cc @ 26:f45da03ca631
* Corrected --disable-vorbis in configure.ac
* Added sound configuration
* Added misc functions
author | thib |
---|---|
date | Sun, 01 Mar 2009 19:08:02 +0000 |
parents | 824b89018ea8 |
children | 01aa5ddf7dc8 |
comparison
equal
deleted
inserted
replaced
25:2110e0cf64ac | 26:f45da03ca631 |
---|---|
1739 } | 1739 } |
1740 new_anm->CalcTotal(); | 1740 new_anm->CalcTotal(); |
1741 cmd.clear(); | 1741 cmd.clear(); |
1742 } | 1742 } |
1743 } | 1743 } |
1744 if (cmd.cmd1 == 1 && cmd.cmd2 == 4) { // Percentage... maybe not working? | 1744 if (cmd.cmd1 == 1 && cmd.cmd2 == 4) { |
1745 if (cmd.cmd3 == 0x5de) { | 1745 if (cmd.cmd3 == 0x5dc) // Total number of CG |
1746 cmd.SetSysvar(cgm_size); | |
1747 if (cmd.cmd3 == 0x5dd) // Number of CG viewed | |
1748 cmd.SetSysvar(cgm_data.size()); | |
1749 if (cmd.cmd3 == 0x5de) // Percentage of CG viewed | |
1746 cmd.SetSysvar(cgm_data.size() * 100 / cgm_size); | 1750 cmd.SetSysvar(cgm_data.size() * 100 / cgm_size); |
1747 } | 1751 |
1748 if (cmd.cmd3 == 0xd8 || cmd.cmd3 == 0xd3 || cmd.cmd3 == 0xd2 || cmd.cmd3 == 0xd7) { | 1752 if (cmd.cmd3 == 0xd8 || cmd.cmd3 == 0xd3 || cmd.cmd3 == 0xd2 || cmd.cmd3 == 0xd7) { |
1749 cmd.clear(); // いつも 0xd8 / 0xd7 と組で出てくる | 1753 cmd.clear(); // いつも 0xd8 / 0xd7 と組で出てくる |
1750 } | 1754 } |
1755 | |
1756 // CG Status | |
1751 if (cmd.cmd3 == 0x5e0) { // 画像既視フラグを得る | 1757 if (cmd.cmd3 == 0x5e0) { // 画像既視フラグを得る |
1752 string s = cmd.Str(cmd.args[0]); | 1758 string s = cmd.Str(cmd.args[0]); |
1753 if (cgm_info.find(s) == cgm_info.end()) { | 1759 if (cgm_info.find(s) == cgm_info.end()) { |
1754 fprintf(stderr,"cmd 01-04:05e0 : cannot find cgm-info of '%s'\n",s.c_str()); | 1760 fprintf(stderr,"cmd 01-04:05e0 : cannot find cgm-info of '%s'\n",s.c_str()); |
1755 return; | 1761 return; |
1756 } | 1762 } |
1757 int n = cgm_info[s]; | 1763 int n = cgm_info[s]; |
1758 if (cgm_data.find(n) == cgm_data.end()) cmd.SetSysvar(0); | 1764 if (cgm_data.find(n) == cgm_data.end()) cmd.SetSysvar(0); |
1759 else cmd.SetSysvar(1); | 1765 else cmd.SetSysvar(1); |
1766 } | |
1767 | |
1768 if (cmd.cmd3 == 0x6a4) { // CreateInput (index, x, y, width, height, fontsize, br, bg, bb, fr, fg, fb) | |
1769 int index = cmd.args[0].value; | |
1770 int x = cmd.args[1].value; | |
1771 int y = cmd.args[2].value; | |
1772 //TODO | |
1773 } | |
1774 if (cmd.cmd3 == 0x6ae) { // SetInput (index, text) | |
1775 //TODO | |
1760 } | 1776 } |
1761 } | 1777 } |
1762 #if 1 | 1778 #if 1 |
1763 /* object 操作 */ | 1779 /* object 操作 */ |
1764 if ( (cmd.cmd1 == 1 || cmd.cmd1 == 2) && (cmd.cmd2 == 0x3d || cmd.cmd2 == 0x3e) && (cmd.cmd3 == 0x0a || cmd.cmd3 == 0x0b || cmd.cmd3 == 0x0e)) { // clear object | 1780 if ( (cmd.cmd1 == 1 || cmd.cmd1 == 2) && (cmd.cmd2 == 0x3d || cmd.cmd2 == 0x3e) && (cmd.cmd3 == 0x0a || cmd.cmd3 == 0x0b || cmd.cmd3 == 0x0e)) { // clear object |
2200 // 音楽を待ってみる(絶対に違うが)。本来、04-803 に対応してなにかの終わりをwaitするっぽい(風子/智代Ed付近) | 2216 // 音楽を待ってみる(絶対に違うが)。本来、04-803 に対応してなにかの終わりをwaitするっぽい(風子/智代Ed付近) |
2201 // EnableSyscom らしいが、よくわからない (rldev) | 2217 // EnableSyscom らしいが、よくわからない (rldev) |
2202 // if (!music.IsStopSE()) status = WAIT_SE; | 2218 // if (!music.IsStopSE()) status = WAIT_SE; |
2203 cmd.clear(); | 2219 cmd.clear(); |
2204 } | 2220 } |
2205 if (cmd.cmd1 == 1 && cmd.cmd2 == 4 && (cmd.cmd3 == 0x8b6 || cmd.cmd3 == 0x91a) ) { | 2221 |
2206 // 音楽モードで音量を上げるためのコマンド (SetBgmVolume) | 2222 // 音楽モードで音量を上げるためのコマンド (SetBgmVolume) |
2207 // とりあえず未実装 | 2223 // とりあえず未実装 |
2224 if (cmd.cmd1 == 1 && cmd.cmd2 == 4 && cmd.cmd3 >= 0x8b6 && cmd.cmd3 <= 0x8b9) { // Set{Bgm,Koe,PCM,Se}VolMod | |
2225 music.volmod[cmd.cmd3-0x8b6] = cmd.args[0].value; | |
2226 config.SetParam("#VOLMOD", 4, music.volmod[0], music.volmod[1], music.volmod[2], music.volmod[3]); | |
2208 cmd.clear(); | 2227 cmd.clear(); |
2228 } | |
2229 if (cmd.cmd1 == 1 && cmd.cmd2 == 4 && cmd.cmd3 >= 0x91a && cmd.cmd3 <= 0x91d) { // Get{Bgm,Koe,PCM,Se}VolMod | |
2230 cmd.SetSysvar(music.volmod[cmd.cmd3-0x91a]); | |
2209 } | 2231 } |
2210 | 2232 |
2211 if (cmd.cmd1 == 1 && cmd.cmd2 == 0x16) { | 2233 if (cmd.cmd1 == 1 && cmd.cmd2 == 0x16) { |
2212 if (cmd.cmd3 == 0 && cmd.cmd4 == 0) { | 2234 if (cmd.cmd3 == 0 && cmd.cmd4 == 0) { |
2213 eprintf("play SE %d\n",cmd.args[0].value); | 2235 eprintf("play SE %d\n",cmd.args[0].value); |