// if they change the number of loops that belong to this one void *Loop::Notes(void *number) { u16 num = *(u32 *)number; // if the number of loops is less than the amount of loops we actually have // then delete notes until we have the right number while (num < numnotes) { DelNote(); } // if it's greater, than add notes until we have the right number while (num > numnotes) { AddNote(); } return NULL; }
void charter_selete() {//인간,마법사,요정,카라스텐구,백랑텐구,캇파,반요,츠구모가미,흡혈귀,오니,사신, 달토끼, 천인, 용궁의사자, 유 령, 망령, 소령 for(int i = 0; i<MAXLEVEL; i++) env[i].floor = i; WaitForSingleObject(mutx, INFINITE); SetText() = "touhou crawl "; SetText() += version_string; SetText() += "\n동방프로젝트와 던전크롤의 동인게임\n\n"; if(load_name(user_name_file.c_str())) { SetText() += "당신의 이름은 \""; SetText() += you.user_name.name; SetText() += "\" 이다.\n"; } else { SetText() += "당신의 이름은 \""; SetText() += you.user_name.name; SetText() += "\" 이다.\n"; SetText() += "user_name.txt에서 당신의 이름을 바꿀 수 있어.\n"; } SetDisplayTexture(&img_title); ReleaseMutex(mutx); waitkeyinput(); WaitForSingleObject(mutx, INFINITE); SetText() += "시작한다!\n"; ReleaseMutex(mutx); Sleep(500); SetDisplayTexture(NULL); { ReplayClass.init_class(); ReplayClass.SaveReplayStart(); } init_state(); map_list.tutorial = GM_TITLE; start_mainmenu(); if(!saveexit) { init_identify(); init_monster(); initMap(); wiz_list.wizard_mode = 0; } if(map_list.tutorial == GM_TITLE) map_list.tutorial = GM_NORMAL; if(isNormalGame() && !saveexit) { char temp[200]; sprintf_s(temp,200,"%s, %s %s %s. 던전의 탐험을 시작했다.", you.user_name.name.c_str(),tribe_type_string[you.tribe],job_type_string[you.job],you.GetCharNameString()->c_str()); AddNote(you.turn,CurrentLevelString(),temp,CL_normal); SetTribe(you.tribe); TouhouPlayerble(you.char_name.name, true); SetJob(you.job,you.char_name.name); TouhouPlayerble(you.char_name.name, false); /*Test_char_init(item_, bonus);*/ you.CalcuHP(); Initialize(); } else if(map_list.tutorial == GM_TUTORIAL) { you.image = &img_play_sanae; you.char_name.name = "사나에"; you.tribe = TRI_HUMAN; you.job = JOB_SHAMAN; SetTribe(you.tribe); you.CalcuHP(); env[current_level].EnterMap(0,deque<monster*>()); printlog("카나코는 말했다 : 환영한다, 사나에! 이번 튜토리얼은 내가 담당하지.",true,false,false,CL_warning); printlog("카나코는 말했다 : 지나간 말은 컨트롤+P로 로그를 확인하고 궁금한건 ?를 눌러.",true,false,false,CL_warning); printlog("카나코는 말했다 : 일단 h j k l나 방향키로 움직일 수 있어. 대소문자에 조심해.",true,false,false,CL_warning); } else if(map_list.tutorial == GM_TUTORIAL2) { you.image = &img_play_sanae; you.char_name.name = "사나에"; you.tribe = TRI_HUMAN; you.job = JOB_SHAMAN; SetTribe(you.tribe); you.CalcuHP(); env[current_level].EnterMap(0,deque<monster*>()); printlog("안녕하세요. Dungeon Crawl Stone Soup (이하 돌죽) 팬게임 동방크롤입니다.",true,false,false,CL_warning); printlog("여기에선 돌죽 경험자분을 위한 튜토리얼입니다.",true,false,false,CL_warning); } else if(map_list.tutorial == GM_SPRINT1_AREANA) { you.image = &img_play_sanae; you.char_name.name = "사나에"; you.tribe = TRI_HUMAN; you.job = JOB_SHAMAN; SetTribe(you.tribe); you.CalcuHP(); env[current_level].EnterMap(0,deque<monster*>()); item_infor t; item *it; it = env[current_level].MakeItem(you.position,makeitem(ITM_RING,1,&t,RGT_SEE_INVISIBLE)); it->Identify(); you.additem(it,false); you.equip('a',ET_LEFT,false); env[current_level].DeleteItem(it); printlog("아레나에 온걸 환영한다! 승리할 것 같은 팀의 방향에 서있어라!",true,false,false,CL_help); printlog("만약 승자를 맞추게되면 레벨이 1 오른다. 틀리면 게임 오버! 기회는 3번...",true,false,false,CL_help); } changedisplay(DT_GAME); saveexit = true; }
void SeqNoteManager::AddNote(int channel, int time, int length, int key, int volume) { SeqNoteParam note(channel, time, length, key, volume); AddNote(note); }
void AddNoteG(GtkAction *action, gpointer param){ AddNote('G'); }
void AddNoteF(GtkAction *action, gpointer param){ AddNote('F'); }
void AddNoteE(GtkAction *action, gpointer param){ AddNote('E'); }
void AddNoteD(GtkAction *action, gpointer param){ AddNote('D'); }
void AddNoteC(GtkAction *action, gpointer param){ AddNote('C'); }
void AddNoteB(GtkAction *action, gpointer param){ AddNote('B'); }
void AddNoteA(GtkAction *action, gpointer param){ AddNote('A'); }
void CNotesPanel::OnAddNote(wxCommandEvent& WXUNUSED(event)) { RefreshNavigationControls(AddNote(m_pTextCtrlNote->GetValue())); }