転生ドラゴンの魔法使い~魔法はガチでプログラムだった~

喰寝丸太

文字の大きさ
23 / 164
第4章 冒険者のドラゴン

第23話 護衛依頼

しおりを挟む
 今日の課題依頼は商人の護衛だ。
 最初は俺に恐がっていた馬もしばらくすると落ち着いてきた。
 ミニアは俺の背に乗っているので商人との会話など発生しない。
 もの凄く暇だな。
 飛んで行くと先行しすぎるため大人しく歩いて馬車の後ろについていく。
 本来だと護衛は先頭なんだが。
 落ち着いたとはいえ俺達が前にいると馬が怯える。
 しょうがない。

 さすがの魔獣もドラゴンに喧嘩を売るようなのは街道沿いには出てこない。
 戦闘もなく楽なもんだ。
 途中、街道を塞ぐように倒木がある。
 怪しいな。
 ミニアが合図の口笛を吹くと馬車は停止。
 俺は前に出て倒木を尻尾で巻き取り遠くに放り投げた。
 それがきっかけだったのか。
 左右にある木の陰から三十人ほどの男達が現れた。

「お頭、ドラゴンが居ますぜ」
「あんなのはったりだ。使役できてるはずがねぇ。一斉に掛かるぞ」
「「「「「「おう」」」」」」

 男達は武器を抜いて一斉に掛かってきた。
 俺は大きく息を吸い込むとブレス。
 あっという声を残して男達は消し炭になった。
 初めて人を殺したな。
 ドラゴン的には全然問題ないみたいだ。
 精神的にくるものがない。
 食えなくてがっかりといった感があるだけだ。
 やっぱり俺ってドラゴンだよな。

「すばらしい」

 拍手しながら商人が馬車から降りて来た。

「ウィザ、無敵」

 ミニアが応対する。

「よろしければ今後もお付き合いしたいものですな」
「よろしく」

 その後はトラブルなどなく目的の街まで到着。
 商人はミニアに労いの言葉をかけた。
 そしてこんな事を言い始めた。

「胡散臭い呪文屋から魔法を借金のカタに押さえたのですが。その中に詠唱しても失敗する物がありまして。その二つを差し上げたいと思います」

 商人が立ち去ったので貰った呪文をチェックする。
 どれどれ、おっ。

 最初が『モチキニソ・けハニスイコチリリモチノイ』だ。
 今までと全然違う。
 期待に胸膨らませ冒頭部分を解析。

 これは『MAGIC *fire_ball_make(int ballsize)』だな。

 もしかすると、もしかするぞ。
 続けて解析。
 全体のイメージはこんなだ。

MAGIC *fire_ball_make(int ballsize)
{
 char *ball; /*火の玉のデータ*/
 MAGIC *mp; /*魔法定義*/
 long i; /*カウンター*/

 ball=(char*)malloc(ballsize*100); /*ファイヤーボールの領域確保*/
 if(ball == NULL) { /*確保失敗 この場合は魔力切れ*/
  exit(EXIT_FAILURE); /*処理の終わり*/
 }
 mp=magic_make(ball,ballsize*100,IMAGEBALL); /*魔法を作る*/
 for(i=0;i<ballsize*100;i++){
  *(&ball[i])=FIRE; /*領域を火属性にする*/
 }
 magic_trans(mp); /*現象に変換*/
 return(mp); /*魔法の情報を返す*/
}

 確かにこれは単体では実行できないな。
 メインじゃないからサブルーチンという奴だ。
 メインから呼び出されて効力を発揮する。

 解析の結果を吟味する。
 これはファイヤーボールを作る関数じゃないか。
 これをこのまま使うと名前が被るから『fire_ball_make2』変更してと。
 呪文のイメージをこんな感じにする。

MAGIC *fire_ball_make2(int ballsize)
{
 char *ball; /*火の玉のデータ*/
  ︙
 return(mp); /*魔法の情報を返す*/
}

void main(void)
{
 MAGIC *mp; /*魔法定義*/
 mp=fire_ball_make2(1); /*火の玉を生成*/
}

 呪文に翻訳してコンパイルしてみる。
 おー、確かにファイヤーボールが生成されほどなくして消えた。
 でもこれバグってるな。
 領域の確保が滅茶苦茶だ。
 ballの領域は保持されないので『main』に戻ると使えない。
 イメージにある『malloc』は領域の確保だ。
 mallocで領域を確保しているんだから解放しないと。
 あれ、消費される魔力に領域確保しているから、解放しても魔力は返ってこない。
 だから、これは良いのか。
 魔法特有のローカルルールなんだろうな。

 もう一つの呪文のイメージはこれか。

void magic_move(MAGIC *mp,char *orbit,int orbit_size)
{
 int i; /*カウンター*/
 for(i=0;i<orbit_size;i++){
  vector_add(mp,*(&orbit[i])); /*速度を設定*/
  time_wait(1); /*0.01秒待つ*/
 }
}

 やった動きの部分だ。
 これをこんなふうにすれば。

void magic_movet_hree(MAGIC *mp1,MAGIC *mp2,MAGIC *mp3,char *orbit1,char *orbit2,char *orbit3,int orbit_size)
{
 int i; /*カウンター*/
 for(i=0;i<orbit_size;i++){
  vector_add(mp1,*(&orbit1[i])); /*一つ目の速度を設定*/
  vector_add(mp2,*(&orbit2[i])); /*二つ目の速度を設定*/
  vector_add(mp3,*(&orbit3[i])); /*三つ目の速度を設定*/
  time_wait(1);
 }
}

 こうすれば三発同時に魔法を動かせる。
 最初の何メートルかを広がる様な軌道にしてその後追尾させれば色んな角度から同時に攻められる。
 この発見はすばらしい。

 この呪文を書いたのは誰だろう。
 呪文は全て発掘品だとミニアは説明してた。
 だとすれば生きてはいないのだろうな。
 話を是非聞きたかったんだが、やむなしか。

 まあ良い。
 今回の発見を組み込んで魔法を作るか。
 八方向から襲い掛かる八方向弾なんて良いかもな。
しおりを挟む

あなたにおすすめの小説

貧民街の元娼婦に育てられた孤児は前世の記憶が蘇り底辺から成り上がり世界の救世主になる。

黒ハット
ファンタジー
【完結しました】捨て子だった主人公は、元貴族の側室で騙せれて娼婦だった女性に拾われて最下層階級の貧民街で育てられるが、13歳の時に崖から川に突き落とされて意識が無くなり。気が付くと前世の日本で物理学の研究生だった記憶が蘇り、周りの人たちの善意で底辺から抜け出し成り上がって世界の救世主と呼ばれる様になる。 この作品は小説書き始めた初期の作品で内容と書き方をリメイクして再投稿を始めました。感想、応援よろしくお願いいたします。

悪役令息、前世の記憶により悪評が嵩んで死ぬことを悟り教会に出家しに行った結果、最強の聖騎士になり伝説になる

竜頭蛇
ファンタジー
ある日、前世の記憶を思い出したシド・カマッセイはこの世界がギャルゲー「ヒロイックキングダム」の世界であり、自分がギャルゲの悪役令息であると理解する。 評判が悪すぎて破滅する運命にあるが父親が毒親でシドの悪評を広げたり、関係を作ったものには危害を加えるので現状では何をやっても悪評に繋がるを悟り、家との関係を断って出家をすることを決意する。 身を寄せた教会で働くうちに評判が上がりすぎて、聖女や信者から崇められたり、女神から一目置かれ、やがて最強の聖騎士となり、伝説となる物語。

元おっさんの俺、公爵家嫡男に転生~普通にしてるだけなのに、次々と問題が降りかかってくる~

おとら@ 書籍発売中
ファンタジー
アルカディア王国の公爵家嫡男であるアレク(十六歳)はある日突然、前触れもなく前世の記憶を蘇らせる。 どうやら、それまでの自分はグータラ生活を送っていて、ろくでもない評判のようだ。 そんな中、アラフォー社畜だった前世の記憶が蘇り混乱しつつも、今の生活に慣れようとするが……。 その行動は以前とは違く見え、色々と勘違いをされる羽目に。 その結果、様々な女性に迫られることになる。 元婚約者にしてツンデレ王女、専属メイドのお調子者エルフ、決闘を仕掛けてくるクーデレ竜人姫、世話をすることなったドジっ子犬耳娘など……。 「ハーレムは嫌だァァァァ! どうしてこうなった!?」 今日も、そんな彼の悲鳴が響き渡る。

知識スキルで異世界らいふ

菻莅❝りんり❞
ファンタジー
他の異世界の神様のやらかしで死んだ俺は、その神様の紹介で別の異世界に転生する事になった。地球の神様からもらった知識スキルを駆使して、異世界ライフ

神々に見捨てられし者、自力で最強へ

九頭七尾
ファンタジー
三大貴族の一角、アルベール家の長子として生まれた少年、ライズ。だが「祝福の儀」で何の天職も授かることができなかった彼は、『神々に見捨てられた者』と蔑まれ、一族を追放されてしまう。 「天職なし。最高じゃないか」 しかし彼は逆にこの状況を喜んだ。というのも、実はこの世界は、前世で彼がやり込んでいたゲーム【グランドワールド】にそっくりだったのだ。 天職を取得せずにゲームを始める「超ハードモード」こそが最強になれる道だと知るライズは、前世の知識を活かして成り上がっていく。

26番目の王子に転生しました。今生こそは健康に大地を駆け回れる身体に成りたいです。

克全
ファンタジー
アルファポリスオンリー。男はずっと我慢の人生を歩んできた。先天的なファロー四徴症という心疾患によって、物心つく前に大手術をしなければいけなかった。手術は成功したものの、術後の遺残症や続発症により厳しい運動制限や生活習慣制限を課せられる人生だった。激しい運動どころか、体育の授業すら見学するしかなかった。大好きな犬や猫を飼いたくても、「人獣共通感染症」や怪我が怖くてペットが飼えなかった。その分勉強に打ち込み、色々な資格を散り、知識も蓄えることはできた。それでも、自分が本当に欲しいものは全て諦めなければいいけない人生だった。だが、気が付けば異世界に転生していた。代償のような異世界の人生を思いっきり楽しもうと考えながら7年の月日が過ぎて……

鑑定持ちの荷物番。英雄たちの「弱点」をこっそり塞いでいたら、彼女たちが俺から離れなくなった

仙道
ファンタジー
異世界の冒険者パーティで荷物番を務める俺は、名前もないようなMOBとして生きている。だが、俺には他者には扱えない「鑑定」スキルがあった。俺は自分の平穏な雇用を守るため、雇い主である女性冒険者たちの装備の致命的な欠陥や、本人すら気づかない体調の異変を「鑑定」で見抜き、誰にもバレずに密かに対処し続けていた。英雄になるつもりも、感謝されるつもりもない。あくまで業務の一環だ。しかし、致命的な危機を未然に回避され続けた彼女たちは、俺の完璧な管理なしでは生きていけないほどに依存し始めていた。剣聖、魔術師、聖女、ギルド職員。気付けば俺は、最強の美女たちに囲まれて逃げ場を失っていた。

異世界転生したらたくさんスキルもらったけど今まで選ばれなかったものだった~魔王討伐は無理な気がする~

宝者来価
ファンタジー
俺は異世界転生者カドマツ。 転生理由は幼い少女を交通事故からかばったこと。 良いとこなしの日々を送っていたが女神様から異世界に転生すると説明された時にはアニメやゲームのような展開を期待したりもした。 例えばモンスターを倒して国を救いヒロインと結ばれるなど。 けれど与えられた【今まで選ばれなかったスキルが使える】 戦闘はおろか日常の役にも立つ気がしない余りものばかり。 同じ転生者でイケメン王子のレイニーに出迎えられ歓迎される。 彼は【スキル:水】を使う最強で理想的な異世界転生者に思えたのだが―――!? ※小説家になろう様にも掲載しています。

処理中です...