// Recorder public void Save(Cf3StageFile stage, int map) { if (CApp.theApp.MakeFileName(out m_FileName, "f3r", Cf3Setting.theSetting.m_RecordNumber, true)) { var data = new Cf3StageFile(); CT chunk; byte[] ptr; // キー入力情報をこーんぽたーじゅ(謎) ptr = new byte[m_nSize * 2]; Seek(); while (!Finished()) { ptr[m_nProgress * 2] = m_keyPressed[m_nProgress]; ptr[m_nProgress * 2 + 1] = m_keyPushed[m_nProgress]; Progress(); } data.SetStageData(CT.CT_RPLY, ptr); // 必要なステージ情報をコピーする if ((ptr = stage.GetStageData(chunk = CT.CT_TITL)) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = CT.CT_HITS)) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = Cf3Map.GetChunkType(CT.CT_TL00, map))) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = Cf3Map.GetChunkType(CT.CT_M000, map))) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = Cf3Map.GetChunkType(CT.CT_M100, map))) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = Cf3Map.GetChunkType(CT.CT_M200, map))) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = CT.CT_MCD0 | (0 << 24))) != null) { data.SetStageData(chunk, ptr); } else if ((ptr = stage.GetStageData(chunk = CT.CT_MCF0 | (0 << 24))) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = CT.CT_MCD0 | (CT)(1 << 24))) != null) { data.SetStageData(chunk, ptr); } else if ((ptr = stage.GetStageData(chunk = CT.CT_MCF0 | (CT)(1 << 24))) != null) { data.SetStageData(chunk, ptr); } if ((ptr = stage.GetStageData(chunk = CT.CT_MCD0 | (CT)(2 << 24))) != null) { data.SetStageData(chunk, ptr); } else if ((ptr = stage.GetStageData(chunk = CT.CT_MCF0 | (CT)(2 << 24))) != null) { data.SetStageData(chunk, ptr); } // 追加の情報 data.SetStageData(CT.CT_STGN, map); data.SetStageData(CT.CT_GRVT, Cf3Setting.theSetting.m_Gravity); data.SetStageData(CT.CT_HYPR, Cf3Setting.theSetting.m_Hyper); data.Write(m_FileName); } }
public static void SetParent(Cf3Map lp) { m_pParent = lp; }