↓ ↑ページトップへ
表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
転生ドラゴンの魔法使い~魔法はガチでプログラムだった~  作者: 喰寝丸太
第3章 辺境都市のドラゴン

この作品ページにはなろうチアーズプログラム参加に伴う広告が設置されています。詳細はこちら

14/164

第14話 呪文作成

 俺用に呪文を作る事にする。

 イメージはこうだ。


void main(void)

{

 int i; /*カウンター*/

 char orbit[200]; /*軌道データ*/

 MAGIC *mp; /*魔法定義*/


 for(i=0;i<100;i++){ /*百回繰り返し*/

  mp=water_ball_make(100); /*水玉生成*/

  magic_straight(mp,orbit,sizeof(orbit)); /*軌道は真っ直ぐ*/

  magic_move(mp,orbit,sizeof(orbit)); /*動かす*/

 }

}


 こんなイメージではどうだろうか。

 射程2メートルで100発のウォーターボールを20倍の威力で放つ。

 素材を丸焼けにしないためにウォーターボールにしてある。

 魔力コストは10012だ。

 前に魔力コスト10000の誘導弾を撃っても平気だったから、これぐらい軽いだろう。

 接近しての滅多打ちを意識してみた。




 魔法というのは一つ実行していると複数は実行できない。

 だから、100発のウォーターボールを撃つのは現実的でない。

 だが、射程を短くすれば一発の時間は短くなる。

 それで射程を2メートルにした。


 それでも100撃つ時間は相当な物だ。

 幸いな事に強制終了は出来るので問題はない。




 そしてもう一つ。


void main(int argc,char *argv[])

{

 int i; /*カウンター*/

 char orbit[200]; /*軌道データ*/

 MAGIC *mp; /*魔法定義*/


 for(i=0;i<100;i++){ /*百回繰り返す*/

  mp=water_ball_make(100); /*水玉生成*/

  magic_direct(mp,orbit,sizeof(orbit),argv[1]); /*軌道は目標に*/

  magic_move(mp,orbit,sizeof(orbit)); /*動かす*/

 }

}


 これと前のとの違いは前のが流○拳だとすると今度のは彗○拳だ。

 要するに分散か一点集中の違いだ。

 ドラゴンはパンチが苦手なのでそれの代わりにしたい。


 それぞれ『モイカイラス』、『ソラモイカ』と名前をつけておいた。


 弱い攻撃もいると考えて一つ作る。


void main(int argc,char *argv[])

{

 int i; /*カウンター*/

 char orbit[10]; /*軌道データ*/

 MAGIC *mp; /*魔法定義*/


 mp=water_ball_make(10); /*水玉生成。*/

 for(i=0;i<1000;i++){ /*百回繰り返す*/

  magic_direct(mp,orbit,sizeof(orbit),argv[1]); /*軌道は目標に*/

  magic_move(mp,orbit,sizeof(orbit)); /*動かす*/

 }

}


 ちょっと強めのウォーターボールで誘導弾だ。

 『マチコ』と名前を付ける。

 なぜに町子。

 でも思いついたのがこれだからしょうがない。




 ミニア用にも二つ作る。


void main(void)

{

 int i; /*カウンター*/

 char orbit[400]; /*軌道データ*/

 MAGIC *mp; /*魔法定義*/


 for(i=0;i<20;i++){ /*二十回繰り返す*/

  mp=fire_ball_make(5); /*火の玉生成*/

  magic_straight(mp,orbit,sizeof(orbit)); /*軌道は真っ直ぐ*/

  magic_move(mp,orbit,sizeof(orbit)); /*動かす*/

 }

}


void main(int argc,char *argv[])

{

 int i; /*カウンター*/

 char orbit[400]; /*軌道データ*/

 MAGIC *mp; /*魔法定義*/


 for(i=0;i<20;i++){ /*二十回繰り返す*/

  mp=fire_ball_make(5); /*火の玉生成*/

  magic_direct(mp,orbit,sizeof(orbit),argv[1]); /*軌道は目標に*/

  magic_move(mp,orbit,sizeof(orbit)); /*動かす*/

 }

}


 こんな感じで作った。

 危険を考えて射程は4メートルの二十連発。

 魔力コスト114だ。

 ミニアに呪文を伝え、コンパイルさせる。

 ファイヤーボール20連発だと伝えると大変喜んだ。


 機会があればまた魔法は作りたい。

 とにかくミニアが冒険に行く準備は整った。


評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。