// 通常=1836216174 // 通過=1936941424 // 乗算=543978861 // スクリーン=1852990323 // 加算=1734632556 ///////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////// void folder_mode(int mode_number) { /////// フォルダを通過に変更する、フォルダの名前 /////// "" は削除しないでください。 //完全一致用 string folder_name_3 = "てすと" ; /////// 個人設定ここまで //部分一致 string folder_name_4 = "グループ" ; // AngelScriptでの文字列検索が不明なので保留 int l_name11 = 1836216174; // 通常 int l_name22 = 1936941424; // 通過 int l_name33 = 543978861; // 乗算 int l_name44 = 1852990323; // スクリーン int l_name55 = 1734632556; // 加算 np_canvas c = get_active_canvas(); np_image img = get_active_image(); //編集中の画像を取得 np_layer layer = get_active_layer(img); int layer_all = get_layer_count(img); //レイヤー枚数 int l_check = 0 ; // フォルダーの有無をチェック int l_check_s = 0 ; // 通過フォルダーを数える int l_check_m = 0 ; // フォルダ名一致の数 int l_check_p = 0 ; // フォルダ名部分一致の数 for (int i = 0; i < layer_all; ++i) {//繰り返し np_layer l = get_layer(img,i);//取得レイヤーを指定 if (is_folder(l) == true) { //レイヤーがフォルダだった場合 l_check = 1 ; string l_mode_name = get_blend_mode(l); // レイヤーモード数値を名前として取得 string l_get_name = get_name(l); // レイヤー名を取得 if (mode_number == 1 || mode_number == 2) { // 通過を弄る if (l_mode_name == "1936941424"){ //通過だった場合 l_check_s++ ; set_blend_mode(l,l_name11); // レイヤーモード「通常」に変更 if (mode_number == 1) { set_blend_mode(l,l_name22); // レイヤーモード「通過」に戻す } } } // 通過を弄る ここまで if (mode_number == 3) { // フォルダ名で判定・一致 if (folder_name_3 == ""){ //設定チェック message_box_ok("指定文字が登録されていません。"); return; } if (folder_name_3 == l_get_name){ //フォルダ名一致 l_check_m++ ; set_blend_mode(l,l_name22); // レイヤーモード「通過」にする } } // フォルダ名で判定・一致 ここまで if (mode_number == 4) { // フォルダ名で判定・部分一致 } // フォルダ名で判定・部分一致 ここまで } } // レイヤーチェックのループ終了 if (l_check == 0) { // フォルダーがなかった場合 message_box_ok("フォルダーがありませんでした。"); return; } if (mode_number == 1 || mode_number == 2) { // 通過フォルダー数 string l_check_ss = l_check_s; message_box_ok("通過フォルダー数 " + l_check_ss); return; } if (mode_number == 3) { // 通過フォルダー数 string l_check_mm = l_check_m; message_box_ok("「" + folder_name_3 + "」 フォルダー数 " + l_check_mm); return; } } ///////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////// // 通過→通常→通過 void folder_mode_1(){ folder_mode(1); } // 通過→通常 void folder_mode_2(){ folder_mode(2); } // 指定フォルダ名(完全一致)を通過 void folder_mode_3(){ folder_mode(3); } // 指定フォルダ名(部分一致)を通過 void folder_mode_4(){ folder_mode(4); }