ひまわりユーザー プログラム掲示板 バックアップ
注意
ひまわりのススメ  □ ひまわり本家Home  □ 新着記事  □ 新規投稿  □ SEARCH  □ 参考プログラム集
ツリー表示

MESSAGE ランダム名前クリエーター /kobachi (02/05/19(Sun) 03:40) [914]
......MESSAGE 感想 /moka (02/05/19(Sun) 04:10) [915]
......MESSAGE 感想:見て楽しい /SWinX (02/05/19(Sun) 15:11) [919]
......MESSAGE 次期バージョンはこんな感じ?(予定) /kobachi (02/05/20(Mon) 00:44) [923]
......MESSAGE バージョンアップ(1.2) /kobachi (02/06/21(Fri) 00:11) [992]
............MESSAGE 感想 /空理 (02/06/29(Sat) 01:02) [1008]
..................MESSAGE あわわ、バグです。修正。(Version 1.21) /kobachi (02/06/29(Sat) 23:54) [1009]


親記事 / ▼[ 915 ] ▼[ 919 ] ▼[ 923 ] ▼[ 992 ]
NO.914  ランダム名前クリエーター
□投稿者/ kobachi -(2002/05/19(Sun) 03:40:43)
□U R L/ http://plaza.across.or.jp/~kobachi/
{---プログラム掲示板投稿フォーム---
【ソフト名】ランダム名前クリエーター (バージョン 1.01)
【作 成 者】kobachi (連絡先:kobachi@po4.across.or.jp)
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.49(必須)
【転  載】可(転載条件:作者にメールで連絡すること)
【改変運用】可
【ひまわり本体への梱包】可
【実行時に利用作成するファイル】無
【コメント】カタカナの名前をランダムに(しかも大量に)作成します。RPGを作ろうと考えている方や、もの書きの方にお勧めです。最新機能を大量に利用しているので、最新版のひまわりが必須です。(久しぶりに、下位互換性を無視してプログラミングしてみました。やっぱり、最新機能は楽しいですね。)

追伸。パソコンはまだ壊れたままなので、別のパソコンから書き込んでいます。ホームページへの掲載はもう少し後となりますが、ご容赦ください。

---投稿フォームここまで---}


*諸変数の設定
初回起動フラグは、オン。
文字書体は、「MS UI Gothic」。文字サイズは、9。
カタカナ一覧は、「ア,イ,ウ,エ,オ,カ,キ,ク,ケ,コ,サ,シ,ス,セ,ソ,タ,チ,ツ,テ,ト
ナ,ニ,ヌ,ネ,ノ,ハ,ヒ,フ,ヘ,ホ,マ,ミ,ム,メ,モ,ヤ,ユ,ヨ,ラ,リ,ル,レ,ロ,ワ,ヲ,ン
ガ,ギ,グ,ゲ,ゴ,ザ,ジ,ズ,ゼ,ゾ,ダ,ヂ,ヅ,デ,ド,バ,ビ,ブ,ベ,ボ,パ,ピ,プ,ペ,ポ
キャ,キュ,キョ,シャ,シュ,ショ,チャ,チュ,チョ,ニャ,ニュ,ニョ,ヒャ,ヒュ,ヒョ
リャ,リュ,リョ,ファ,フィ,フェ,フォ,ギャ,ギュ,ギョ,ジャ,ジュ,ジョ,ビャ,ビュ
ミャ,ミュ,ミョ,ビョ,ピャ,ピュ,ピョ,ヴァ,ヴィ,ヴ,ヴェ,ヴォ,ッ」。
カタカナ一覧の、「,」を、「\n」に、置換して、カタカナ一覧に、入れる。
作成数一覧は、「10,20,30,40,50,60,70,80,90,100 候補」。
作成数一覧の、「,」を、「 候補\n」に、置換して、作成数一覧に、入れる。


*母艦の設定
母艦の、タイトルは、「ランダム名前クリエーター」。
母艦の、幅は、300。母艦の、高さは、300。
母艦の、変更した時は、自動サイズ調整。
母艦を、中央へ移動。


*オブジェクトの作成
長さコンボを、コンボとして、作成。
その、アイテムは、「短めの名前を\n適度な名前を\n長めの名前を\n任意長の名前を」。
その、編集を、オフに、設定して、その、値を、1に、設定する。
長音コンボを、コンボとして、作成。
その、アイテムは、「長音を少なめに\n長音を適度に\n長音を多めに」。
その、編集を、オフに、設定して、その、値を、1に、設定する。
作成数コンボを、コンボとして、作成。
その、アイテムは、作成数一覧。
その、編集を、オフに、設定して、その、値を、0に、設定する。
作成ボタンを、ボタンとして、作成。
その、テキストは、「名前の自動生成」。
その、イベントは、名前の自動生成。
コピーボタンを、ボタンとして、作成。
その、テキストを、「全コピー」に、設定して、その、有効を、オフに、設定。
そして、その、イベントを、名前の全コピーに、設定する。
名前リストを、リストとして、作成。
その、フォント書体は、「MS P明朝」。
その、フォントサイズは、12。
自動サイズ調整。
母艦浮上して、待機。


*名前の自動生成
//各種条件の初期化
名前は、「」。
長さコンボの、値を、名前長さに、得る。
長音コンボの、値を、長音倍率に、得る。
作成数コンボの、値を、名前作成数に、得る。
名前長さで、条件分岐。
   0の時、(最低文字数は、2。最高文字数は、3。)。
   1の時、(最低文字数は、2。最高文字数は、6。)。
   2の時、(最低文字数は、4。最高文字数は、7。)。
   3の時、(最低文字数は、1。最高文字数は、0。
      //へんてこな数値を指定されないように対策
      (最低文字数>最高文字数)で、ループ(
         (最低文字数<2)で、ループ(
            「名前の最低文字数を、2〜の範囲で入力してください。」と、尋ねる。
            最低文字数は、それ。
            最低文字数が、数字か。
            もし、それが、いいえなら、最低文字数は、1。
         )
         (最高文字数<3)で、ループ(
            「名前の最高文字数を、2〜の範囲で入力してください。」と、尋ねる。
            最高文字数は、それ。
            最高文字数が、数字か。
            もし、それが、いいえなら、最高文字数は、0。
         )
      )
   )
//名前の作成メインルーチン
名前番号を、0から、((名前作成数+1)*10)まで、繰り返す(
   名前バッファは、「」。
   (最高文字数-最低文字数)の、乱数。それに、最低文字数を、足す。
   それ回、(
      (120+(長音倍率*50))の、乱数。
      もし、回数が、1なら、(
         //禁則文字チェック
         それで、条件分岐。
            45の時、追加する文字は、カタカナ一覧#(乱数(44))。
            113の時、追加する文字は、カタカナ一覧#(乱数(112))。
            114以上の時、追加する文字は、カタカナ一覧#(乱数(112))。
            その他の時、追加する文字は、カタカナ一覧#それ。
      )
      違えば、(
         //繰り返しチェック
         追加する文字で、条件分岐
            「ー」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            「ッ」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            「ン」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            その他の時、(
               もし、それが、114以上なら、追加する文字は、「ー」。
               違えば、追加する文字は、カタカナ一覧#それ。
            )
      )
      名前バッファに、追加する文字を、足す。
   )
   名前#名前番号は、名前バッファ。
)
名前リストの、アイテムは、名前。
//初めて起動した時の処理
もし、初回起動フラグが、オンなら、(
   「名前をダブルクリックすると、名前をコピーできます。」と、言う。
   名前リストの、ダブルクリックした時は、名前のコピー。
   コピーボタンの、有効は、オン。
   初回起動フラグは、オフ。
)
戻る。


*名前のコピー
名前リストの、選択文字列を、それに、得る。
もし、それが、「」でなければ、それを、クリップボードへ、保存。
戻る。


*名前の全コピー
名前を、クリップボードに、保存。
戻る。


*自動サイズ調整
//すべてのオブジェクトの配置をここで管理
長さコンボの、サイズは、(0,0,(母艦の、幅)*0.35,(母艦の、高さ)*0.1)。
長音コンボの、サイズは、((母艦の、幅)*0.35,0,(母艦の、幅)*0.75,(母艦の、高さ)*0.1)。
作成数コンボの、サイズは、((母艦の、幅)*0.75,0,(母艦の、幅),(母艦の、高さ)*0.1)。
作成ボタンの、サイズは、(0,(作成数コンボの、高さ),(母艦の、幅)*0.5,(作成数コンボの、高さ)*2)。
コピーボタンの、サイズは、((母艦の、幅)*0.5,(作成数コンボの、高さ),(母艦の、幅),(作成数コンボの、高さ)*2)。
名前リストの、サイズは、(0,(作成数コンボの、高さ)*2,(母艦の、幅),(母艦の、高さ))。
戻る。



▲[ 914 ] / 返信無し
NO.915  感想
□投稿者/ moka -(2002/05/19(Sun) 04:10:49)
□U R L/ http://www.geocities.jp/moka21/teatime/
78行目の
> (最高文字数<3)で、ループ(
>   「名前の最高文字数を、2〜の範囲で入力してください。」と、尋ねる。

2〜ってのが間違ってるような。
{最低文字数}〜としたらいいかも。

===

RPGの名前やハンドル考えるのに困った時に使えそうですね。
ファンタジーなシナリオ書く人にもいいかも。
オプションの組み合せでも雰囲気が変わるのが面白いです。

パーンミュギギ「ロドの剣を手に入れたっ!」
ミケ「次はサグワダの街へ行こうね」
パーン「おう。その前にカニ食いてぇ〜」
マフィ「ダーゴー料理って有名なんだって」
・・・

じっくり見ると面白い名前ばかりで、選ぶの辛いな。(笑)



▲[ 914 ] / 返信無し
NO.919  感想:見て楽しい
□投稿者/ SWinX -(2002/05/19(Sun) 15:11:42)
□U R L/
これは面白いです。
ファンタジー物の名前に困ったときはとりあえず実行してみると
意外な名前に出会えます。

しっかり禁則処理もしてるし、名前が結構自然ですね。
拗音の多い少ないも選べるといいかも。

あと、日本語風とか、中華風とか、フランス風、なんてのもいいなぁ…
難しそうですけど。



▲[ 914 ] / 返信無し
NO.923  次期バージョンはこんな感じ?(予定)
□投稿者/ kobachi -(2002/05/20(Mon) 00:44:27)
□U R L/ http://plaza.across.or.jp/~kobachi/
はい。SWinXさんのおっしゃる通り、拗音(ちいさな字の入っているひらがな)の出現回数がおおいですね。これは、カタカナ一覧のデータの性質が大きく関連していると思います。清音:濁音:半濁音:拗音=5:4:1:4位の比率なので、どうしても拗音が多く含まれてしまいます。これについては、次のバージョンで解決しようかと思っています。


    1.五十音表を、二次元配列にして、母音を参考に読みやすい名前を作る「読みやすい名前作成」機能
    2.特定の文字が出現する割合を任意に変更できる「傾斜配点」機能
    3.繰り返しのある名前を作成する「リフレイン名前作成」機能
    4.パンダ的な名前を作成する「パンダ的名前作成」機能
    5.適度な位置で区切り記号(「=」や「・」など)を挿入する機能


を搭載しようと考えています。現状のままでも思考の補助プログラムとしては十分に機能を果たしていると思いますので、バージョンアップは技術的・学術的な面が多くなりそうです。(ファジィ理論を勉強してみますか…)ランダムな名前を返す関数にでもしてみましょうか?



▲[ 914 ] / ▼[ 1008 ]
NO.992  バージョンアップ(1.2)
□投稿者/ kobachi -(2002/06/21(Fri) 00:11:36)
□U R L/ http://plaza.across.or.jp/~kobachi/
{---プログラム掲示板投稿フォーム---
【ソフト名】ランダム名前クリエーター (バージョン 1.2)
【作 成 者】kobachi (連絡先:kobachi@po4.across.or.jp)
【種  別】フリーソフトウェア
【ひまわりのバージョン】ver.1.50(必須)
【転  載】可(転載条件:作者にメールで連絡すること)
【改変運用】可
【ひまわり本体への梱包】可
【実行時に利用作成するファイル】有(favorites.ini)
【コメント】カタカナの名前をランダムに(しかも大量に)作成します。RPGを作ろうと考えている方や、もの書きの方にお勧めです。最新機能を大量に利用しているので、最新版のひまわりが必須です。
---投稿フォームここまで---}
*諸変数の設定
お気に入りの保存に、終了処理設定。
初回起動フラグは、オン。
文字書体は、「MS UI Gothic」。文字サイズは、9。
カタカナ一覧は、「ア,イ,ウ,エ,オ,カ,キ,ク,ケ,コ,サ,シ,ス,セ,ソ,タ,チ,ツ,テ,ト
ナ,ニ,ヌ,ネ,ノ,ハ,ヒ,フ,ヘ,ホ,マ,ミ,ム,メ,モ,ヤ,ユ,ヨ,ラ,リ,ル,レ,ロ,ワ,ヲ,ン
ガ,ギ,グ,ゲ,ゴ,ザ,ジ,ズ,ゼ,ゾ,ダ,ヂ,ヅ,デ,ド,バ,ビ,ブ,ベ,ボ,パ,ピ,プ,ペ,ポ
キャ,キュ,キョ,シャ,シュ,ショ,チャ,チュ,チョ,ニャ,ニュ,ニョ,ヒャ,ヒュ,ヒョ
リャ,リュ,リョ,ファ,フィ,フェ,フォ,ギャ,ギュ,ギョ,ジャ,ジュ,ジョ,ビャ,ビュ
ミャ,ミュ,ミョ,ビョ,ピャ,ピュ,ピョ,ヴァ,ヴィ,ヴ,ヴェ,ヴォ,ッ」。
カタカナ一覧の、「,」を、「\n」に、置換して、カタカナ一覧に、入れる。
作成数一覧は、「10,20,30,40,50,60,70,80,90,100 候補」。
作成数一覧の、「,」を、「 候補\n」に、置換して、作成数一覧に、入れる。


*各種ファイルの読み込み
「favorites.ini」が、存在するか。
もし、それが、はいなら、お気に入り名前バッファに、「favorites.ini」を、読む。
でなければ、お気に入り名前バッファは、「」。


*母艦の設定
母艦の、タイトルは、「ランダム名前クリエーター Version 1.2」。
母艦の、幅は、300。母艦の、高さは、300。
母艦の、変更した時は、自動サイズ調整。
母艦を、中央へ移動。


*オブジェクトの作成
長さコンボを、コンボとして、作成。
その、アイテムは、「短めの名前を\n適度な名前を\n長めの名前を\n任意長の名前を」。
その、編集を、オフに、設定して、その、値を、1に、設定する。
長音コンボを、コンボとして、作成。
その、アイテムは、「長音を少なめに\n長音を適度に\n長音を多めに」。
その、編集を、オフに、設定して、その、値を、1に、設定する。
作成数コンボを、コンボとして、作成。
その、アイテムは、作成数一覧。
その、編集を、オフに、設定して、その、値を、0に、設定する。
作成ボタンを、ボタンとして、作成。
その、テキストは、「名前の自動生成」。
その、イベントは、名前の自動生成。
追加ボタンを、ボタンとして、作成。
その、テキストを、「追加」に、設定。
そして、その、イベントを、お気に入りに追加に、設定する。
コピーボタンを、ボタンとして、作成。
その、テキストを、「コピー」に、設定して、その、有効を、オフに、設定。
そして、その、イベントを、お気に入りのコピーに、設定する。
削除ボタンを、ボタンとして、作成。
その、テキストを、「削除」に、設定して、その、有効を、オフに、設定。
そして、その、イベントを、お気に入りから削除に、設定する。
名前リストを、リストとして、作成。
その、フォント書体は、「MS P明朝」。
その、フォントサイズは、12。
お気に入り名前リストを、リストとして、作成。
その、フォント書体は、「MS P明朝」。
その、フォントサイズは、12。
その、アイテムは、お気に入り名前バッファ。
その、ダブルクリックした時は、お気に入りのコピー。
その、クリックした時は、ボタン有効化。
自動サイズ調整。
母艦浮上して、待機。


*名前の自動生成
//各種条件の初期化
名前は、「」。
長さコンボの、値を、名前長さに、得る。
長音コンボの、値を、長音倍率に、得る。
作成数コンボの、値を、名前作成数に、得る。
名前長さで、条件分岐。
   0の時、(最低文字数は、2。最高文字数は、3。)。
   1の時、(最低文字数は、2。最高文字数は、6。)。
   2の時、(最低文字数は、4。最高文字数は、7。)。
   3の時、(最低文字数は、1。最高文字数は、0。
      //へんてこな数値を指定されないように対策
      (最低文字数>最高文字数)で、ループ(
         (最低文字数<2)で、ループ(
            「名前の最低文字数を、2〜の範囲で入力してください。」と、尋ねる。
            最低文字数は、それ。
            最低文字数が、数字か。
            もし、それが、いいえなら、最低文字数は、1。
         )
         (最高文字数<3)で、ループ(
            「名前の最高文字数を、2〜の範囲で入力してください。」と、尋ねる。
            最高文字数は、それ。
            最高文字数が、数字か。
            もし、それが、いいえなら、最高文字数は、0。
         )
      )
   )
//名前の作成メインルーチン
名前番号を、0から、((名前作成数+1)*10)まで、繰り返す(
   名前バッファは、「」。
   (最高文字数-最低文字数)の、乱数。それに、最低文字数を、足す。
   それ回、(
      (120+(長音倍率*50))の、乱数。
      もし、回数が、1なら、(
         //禁則文字チェック
         それで、条件分岐。
            45の時、追加する文字は、カタカナ一覧#(乱数(44))。
            113の時、追加する文字は、カタカナ一覧#(乱数(112))。
            114以上の時、追加する文字は、カタカナ一覧#(乱数(112))。
            その他の時、追加する文字は、カタカナ一覧#それ。
      )
      違えば、(
         //繰り返しチェック
         追加する文字で、条件分岐
            「ー」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            「ッ」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            「ン」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            その他の時、(
               もし、それが、114以上なら、追加する文字は、「ー」。
               違えば、追加する文字は、カタカナ一覧#それ。
            )
      )
      名前バッファに、追加する文字を、足す。
   )
   名前#名前番号は、名前バッファ。
)
名前リストの、アイテムは、名前。
//初めて起動した時の処理
もし、初回起動フラグが、オンなら、(
   「名前をダブルクリックすると、名前をお気に入りに登録します。\n」&
   「お気に入りに登録された名前をダブルクリックすると、クリップボードにコピーします。」と、言う。
   名前リストの、ダブルクリックした時は、お気に入りに追加。
   初回起動フラグは、オフ。
)
戻る。


*ボタン有効化
//ボタンを有効化する
コピーボタンの、有効は、オン。
削除ボタンの、有効は、オン。
戻る。


*お気に入りに追加
お気に入り名前リストの、アイテムを、お気に入り名前バッファに、得る。
名前リストの、選択文字列を、名前バッファに、得る。
もし、名前バッファが、「」でなければ、(
   //重複チェック
   お気に入り名前バッファの、0列目から、名前バッファを、表検索。
   もし、それが、-1なら、(
      //重複が無ければお気に入りに登録
      お気に入り名前バッファは、お気に入り名前バッファ&名前バッファ&「\n」。
      お気に入り名前リストの、アイテムは、お気に入り名前バッファ。
   )
   でなければ、「同じ名前が既に登録されています。」と、言う。
)
戻る。


*お気に入りのコピー
//名前をクリップボードにコピー
お気に入り名前リストの、選択文字列を、名前バッファに、得る。
もし、名前バッファが、「」でなければ、名前バッファを、クリップボードに、保存。
戻る。


*お気に入りから削除
お気に入り名前リストの、アイテムを、お気に入り名前バッファに、得る。
//お気に入りに何も登録されていなければ処理しない
もし、名前バッファが、「」でなければ、(
   //削除の確認
   お気に入り名前リストの、値を、選択行に、得る。
   「\"{お気に入り名前バッファ#選択行}\" をお気に入りから削除しますか?」と、二択。
   もし、それが、はいなら、(
      お気に入り名前バッファの、名前バッファ行目を、行削除。
      お気に入り名前リストの、アイテムは、それ。
      もし、それが、「」なら、(
         //削除した結果、アイテムがなくなった場合
         コピーボタンの、有効は、オフ。
         削除ボタンの、有効は、オフ。
      )
   )
)
戻る。


*お気に入りの保存
//登録したお気に入りをファイルに保存
お気に入り名前リストの、アイテムを、お気に入り名前バッファに、得る。
お気に入り名前バッファを、「favorites.ini」に、保存。
終わり。


*自動サイズ調整
//すべてのオブジェクトの配置をここで管理
長さコンボの、サイズは、(0,0,(母艦の、幅)*0.35,(母艦の、高さ)*0.1)。
長音コンボの、サイズは、((母艦の、幅)*0.35,0,(母艦の、幅)*0.75,(母艦の、高さ)*0.1)。
作成数コンボの、サイズは、((母艦の、幅)*0.75,0,(母艦の、幅),(母艦の、高さ)*0.1)。
作成ボタンの、サイズは、(0,(作成数コンボの、高さ),(母艦の、幅)*0.70,(作成数コンボの、高さ)*2)。
追加ボタンの、サイズは、((母艦の、幅)*0.70,(作成数コンボの、高さ),(母艦の、幅)*0.80,(作成数コンボの、高さ)*2)。
削除ボタンの、サイズは、((母艦の、幅)*0.80,(作成数コンボの、高さ),(母艦の、幅)*0.90,(作成数コンボの、高さ)*2)。
コピーボタンの、サイズは、((母艦の、幅)*0.90,(作成数コンボの、高さ),(母艦の、幅),(作成数コンボの、高さ)*2)。
名前リストの、サイズは、(0,(作成数コンボの、高さ)*2,(母艦の、幅)*0.70,(母艦の、高さ))。
お気に入り名前リストの、サイズは、((母艦の、幅)*0.70,(作成数コンボの、高さ)*2,(母艦の、幅),(母艦の、高さ))。
戻る。



▲[ 992 ] / ▼[ 1009 ]
NO.1008  感想
□投稿者/ 空理 -(2002/06/29(Sat) 01:02:56)
□U R L/
面白いですっ!
すんごいイイのが出来る時もあれば大笑いするようなのが出来たり…
いろいろ(?)使わせていただきたいです。

ただ、お気に入りに入れたものを削除しようとしたとき、どれを選択していても、何故か必ず一番上のものから消されてしまうのですが…



▲[ 1008 ] / 返信無し
NO.1009  あわわ、バグです。修正。(Version 1.21)
□投稿者/ kobachi -(2002/06/29(Sat) 23:54:10)
□U R L/ http://plaza.across.or.jp/~kobachi/
*諸変数の設定
お気に入りの保存に、終了処理設定。
初回起動フラグは、オン。
文字書体は、「MS UI Gothic」。文字サイズは、9。
カタカナ一覧は、「ア,イ,ウ,エ,オ,カ,キ,ク,ケ,コ,サ,シ,ス,セ,ソ,タ,チ,ツ,テ,ト
ナ,ニ,ヌ,ネ,ノ,ハ,ヒ,フ,ヘ,ホ,マ,ミ,ム,メ,モ,ヤ,ユ,ヨ,ラ,リ,ル,レ,ロ,ワ,ヲ,ン
ガ,ギ,グ,ゲ,ゴ,ザ,ジ,ズ,ゼ,ゾ,ダ,ヂ,ヅ,デ,ド,バ,ビ,ブ,ベ,ボ,パ,ピ,プ,ペ,ポ
キャ,キュ,キョ,シャ,シュ,ショ,チャ,チュ,チョ,ニャ,ニュ,ニョ,ヒャ,ヒュ,ヒョ
リャ,リュ,リョ,ファ,フィ,フェ,フォ,ギャ,ギュ,ギョ,ジャ,ジュ,ジョ,ビャ,ビュ
ミャ,ミュ,ミョ,ビョ,ピャ,ピュ,ピョ,ヴァ,ヴィ,ヴ,ヴェ,ヴォ,ッ」。
カタカナ一覧の、「,」を、「\n」に、置換して、カタカナ一覧に、入れる。
作成数一覧は、「10,20,30,40,50,60,70,80,90,100 候補」。
作成数一覧の、「,」を、「 候補\n」に、置換して、作成数一覧に、入れる。


*各種ファイルの読み込み
「favorites.ini」が、存在するか。
もし、それが、はいなら、お気に入り名前バッファに、「favorites.ini」を、読む。
でなければ、お気に入り名前バッファは、「」。


*母艦の設定
母艦の、タイトルは、「ランダム名前クリエーター Version 1.2」。
母艦の、幅は、300。母艦の、高さは、300。
母艦の、変更した時は、自動サイズ調整。
母艦を、中央へ移動。


*オブジェクトの作成
長さコンボを、コンボとして、作成。
その、アイテムは、「短めの名前を\n適度な名前を\n長めの名前を\n任意長の名前を」。
その、編集を、オフに、設定して、その、値を、1に、設定する。
長音コンボを、コンボとして、作成。
その、アイテムは、「長音を少なめに\n長音を適度に\n長音を多めに」。
その、編集を、オフに、設定して、その、値を、1に、設定する。
作成数コンボを、コンボとして、作成。
その、アイテムは、作成数一覧。
その、編集を、オフに、設定して、その、値を、0に、設定する。
作成ボタンを、ボタンとして、作成。
その、テキストは、「名前の自動生成」。
その、イベントは、名前の自動生成。
追加ボタンを、ボタンとして、作成。
その、テキストを、「追加」に、設定。
そして、その、イベントを、お気に入りに追加に、設定する。
コピーボタンを、ボタンとして、作成。
その、テキストを、「コピー」に、設定して、その、有効を、オフに、設定。
そして、その、イベントを、お気に入りのコピーに、設定する。
削除ボタンを、ボタンとして、作成。
その、テキストを、「削除」に、設定して、その、有効を、オフに、設定。
そして、その、イベントを、お気に入りから削除に、設定する。
名前リストを、リストとして、作成。
その、フォント書体は、「MS P明朝」。
その、フォントサイズは、12。
お気に入り名前リストを、リストとして、作成。
その、フォント書体は、「MS P明朝」。
その、フォントサイズは、12。
その、アイテムは、お気に入り名前バッファ。
その、ダブルクリックした時は、お気に入りのコピー。
その、クリックした時は、ボタン有効化。
自動サイズ調整。
母艦浮上して、待機。


*名前の自動生成
//各種条件の初期化
名前は、「」。
長さコンボの、値を、名前長さに、得る。
長音コンボの、値を、長音倍率に、得る。
作成数コンボの、値を、名前作成数に、得る。
名前長さで、条件分岐。
   0の時、(最低文字数は、2。最高文字数は、3。)。
   1の時、(最低文字数は、2。最高文字数は、6。)。
   2の時、(最低文字数は、4。最高文字数は、7。)。
   3の時、(最低文字数は、1。最高文字数は、0。
      //へんてこな数値を指定されないように対策
      (最低文字数>最高文字数)で、ループ(
         (最低文字数<2)で、ループ(
            「名前の最低文字数を、2〜の範囲で入力してください。」と、尋ねる。
            最低文字数は、それ。
            最低文字数が、数字か。
            もし、それが、いいえなら、最低文字数は、1。
         )
         (最高文字数<3)で、ループ(
            「名前の最高文字数を、2〜の範囲で入力してください。」と、尋ねる。
            最高文字数は、それ。
            最高文字数が、数字か。
            もし、それが、いいえなら、最高文字数は、0。
         )
      )
   )
//名前の作成メインルーチン
名前番号を、0から、((名前作成数+1)*10)まで、繰り返す(
   名前バッファは、「」。
   (最高文字数-最低文字数)の、乱数。それに、最低文字数を、足す。
   それ回、(
      (120+(長音倍率*50))の、乱数。
      もし、回数が、1なら、(
         //禁則文字チェック
         それで、条件分岐。
            45の時、追加する文字は、カタカナ一覧#(乱数(44))。
            113の時、追加する文字は、カタカナ一覧#(乱数(112))。
            114以上の時、追加する文字は、カタカナ一覧#(乱数(112))。
            その他の時、追加する文字は、カタカナ一覧#それ。
      )
      違えば、(
         //繰り返しチェック
         追加する文字で、条件分岐
            「ー」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            「ッ」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            「ン」の時、追加する文字は、カタカナ一覧#(乱数(112))。
            その他の時、(
               もし、それが、114以上なら、追加する文字は、「ー」。
               違えば、追加する文字は、カタカナ一覧#それ。
            )
      )
      名前バッファに、追加する文字を、足す。
   )
   名前#名前番号は、名前バッファ。
)
名前リストの、アイテムは、名前。
//初めて起動した時の処理
もし、初回起動フラグが、オンなら、(
   「名前をダブルクリックすると、名前をお気に入りに登録します。\n」&
   「お気に入りに登録された名前をダブルクリックすると、クリップボードにコピーします。」と、言う。
   名前リストの、ダブルクリックした時は、お気に入りに追加。
   初回起動フラグは、オフ。
)
戻る。


*ボタン有効化
//ボタンを有効化する
コピーボタンの、有効は、オン。
削除ボタンの、有効は、オン。
戻る。


*お気に入りに追加
お気に入り名前リストの、アイテムを、お気に入り名前バッファに、得る。
名前リストの、選択文字列を、名前バッファに、得る。
もし、名前バッファが、「」でなければ、(
   //重複チェック
   お気に入り名前バッファの、0列目から、名前バッファを、表検索。
   もし、それが、-1なら、(
      //重複が無ければお気に入りに登録
      お気に入り名前バッファは、お気に入り名前バッファ&名前バッファ&「\n」。
      お気に入り名前リストの、アイテムは、お気に入り名前バッファ。
   )
   でなければ、「同じ名前が既に登録されています。」と、言う。
)
戻る。


*お気に入りのコピー
//名前をクリップボードにコピー
お気に入り名前リストの、選択文字列を、名前バッファに、得る。
もし、名前バッファが、「」でなければ、名前バッファを、クリップボードに、保存。
戻る。


*お気に入りから削除
お気に入り名前リストの、アイテムを、お気に入り名前バッファに、得る。
//お気に入りに何も登録されていなければ処理しない
もし、名前バッファが、「」でなければ、(
   //削除の確認
   お気に入り名前リストの、値を、選択行に、得る。
   「\"{お気に入り名前バッファ#選択行}\" をお気に入りから削除しますか?」と、二択。
   もし、それが、はいなら、(
      お気に入り名前バッファの、選択行行目を、行削除。
      お気に入り名前リストの、アイテムは、それ。
      もし、それが、「」なら、(
         //削除した結果、アイテムがなくなった場合
         コピーボタンの、有効は、オフ。
         削除ボタンの、有効は、オフ。
      )
   )
)
戻る。


*お気に入りの保存
//登録したお気に入りをファイルに保存
お気に入り名前リストの、アイテムを、お気に入り名前バッファに、得る。
お気に入り名前バッファを、「favorites.ini」に、保存。
終わり。


*自動サイズ調整
//すべてのオブジェクトの配置をここで管理
長さコンボの、サイズは、(0,0,(母艦の、幅)*0.35,(母艦の、高さ)*0.1)。
長音コンボの、サイズは、((母艦の、幅)*0.35,0,(母艦の、幅)*0.75,(母艦の、高さ)*0.1)。
作成数コンボの、サイズは、((母艦の、幅)*0.75,0,(母艦の、幅),(母艦の、高さ)*0.1)。
作成ボタンの、サイズは、(0,(作成数コンボの、高さ),(母艦の、幅)*0.70,(作成数コンボの、高さ)*2)。
追加ボタンの、サイズは、((母艦の、幅)*0.70,(作成数コンボの、高さ),(母艦の、幅)*0.80,(作成数コンボの、高さ)*2)。
削除ボタンの、サイズは、((母艦の、幅)*0.80,(作成数コンボの、高さ),(母艦の、幅)*0.90,(作成数コンボの、高さ)*2)。
コピーボタンの、サイズは、((母艦の、幅)*0.90,(作成数コンボの、高さ),(母艦の、幅),(作成数コンボの、高さ)*2)。
名前リストの、サイズは、(0,(作成数コンボの、高さ)*2,(母艦の、幅)*0.70,(母艦の、高さ))。
お気に入り名前リストの、サイズは、((母艦の、幅)*0.70,(作成数コンボの、高さ)*2,(母艦の、幅),(母艦の、高さ))。
戻る。



- Child Tree -