はじめての競技魔法
城の裏にあたる庭は広く整備されており、その一角にはちょうど日本の弓道場のようなエリアがあった。
メリッサがそこを目指していることから魔法競技場らしい。
「ルールを説明するわ」
ジョージが魔法競技場の板葺きの一角、射場に立つと、メリッサが30メートルほど先の的を指しながら説明を始める。
「あそこ、縦に2つある的、今回はあれを使うわ。10本のMissileを5本ずつ当てて。ただし、的の片方にはFire、もう片方にはIceを。コストが安く済むように…………あなたには関係ないでしょうけど、競技だから…………Fire(200)とFire(-10)で構わないわ。この競技は魔法が発動してから全てが当たるまでの時間の短さが評価されるの。20秒以内が望ましいわ」
「なるほど。的のどちらにFireを当てるか決まってないんだな?ちょっと1発Missile撃って確認させてもらって構わないか?」
「いいわよ」
ジョージは脳内エディタを起動すると、ざっとコードを書き、コンパイルして唱える。
「java MagicMissileWithClassName」
別に大したコードを書いたわけではなく、単にgetTargetObjectで取れたObjectのgetClass().getSimpleName()をSystem.out.printlnでコンソールに表示するコードが追加されたMagicMissileを書いただけだ。
MagicMissileが的に当たったのを確認すると、ジョージは呟いた。
「ほう、期待してなかったが、TheMarkなんて専用のクラスがあるんだな。競技魔法専用か」
そして再度脳内エディタを起動し、今度はルールに従った魔法を書きだし、すぐにそれを終える。
「よしできた。いつでも撃てるぞ」
「速いわねぇ。呪文が最適化できてる証拠ね。これでルールどおりなら、かなり実力があるわね。最近の魔法使いって、まるで考えてない呪文組んでる子が多くて、工夫ってものをしないのよ。そういうのってだらだら長くて嫌になっちゃう」
「おお!最適化の重要さを知っているとはさすが筆頭宮廷魔術師!気が合うな!」
「あら、あなた!えーと…………」
「そういえば名乗っていなかったな。ジョージ。ジョージ・ミウラ―だ」
ゴフランとマーロックもその名前を記憶に入れる。
「いい名前ね!ミウラーも冗長な呪文反対派なのね!」
「もちろん、『マリーたんの魔法入門』なんか最悪だった」
(え?)
そのとき、メリッサは気づいていなかった、自分とジョージの間には温度差があったことに。
実はメリッサが言った”魔法が発動”の意味とジョージが理解した”魔法が発動”も温度差があったのだが、そちらも二人は気づかない。
「さて、魔法が発動してから20秒とは…………随分余裕があるんだな。2秒の間違いか?」
「え?何を言っ「java CompetitionMagicMissile」」
ジョージがそう唱えた1秒後には炎5本、氷5本、合わせて10本の矢が同時に現れ、それは瞬時に2つの的へと綺麗に別れ、命中する。
矢が現れてから命中までは2秒ほど、合計して3秒ちょっとしかかかっていない。
「これだけ距離があると流石に2秒は切れないか。ん?どうした?」
ゴフランとマーロックと同様に口をぽかんと開けて呆然としているメリッサに対して、怪訝そうに尋ねるジョージ。
「え、あ、えーと、申し訳ないけど呪文見せて頂いてもよろしくて?」
我に返ったメリッサが、ローブの裾から紙の束を取り出す。
よほど動揺したのだろう、その際に胸元から下着とその豊かな膨らみが見えてしまっていたが、もちろんジョージは見て見ぬふりをした。
「どうやればいいんだ?」
「あ、念写紙って高いから知らなくても仕方ないのかしら?」
自分で言っておいて、魔力767の大魔導師が知らないものなのかと疑問に思いつつもメリッサは説明する。
「魔法一覧から念写紙に、先ほどの魔法を動かす感覚、わかるかしら?」
「んー、こうか?」
ジョージがドラッグ&ドロップの感覚で言われたとおりにやってみると、わりとあっさりと脳内のコードが紙に書き出された。
「見せて!」
メリッサがひったくるように念写紙を奪い、それに目を通して…………絶句した。
(何が書いてあるのかさっぱりわからない)
魔術師としての自信が粉微塵になりそうな気持ちになりながらも、それを面に出さず、
「へぇ、凄いわね」
とにっこりと笑いながら言ったのは、さすが筆頭宮廷魔術師というところか。
メリッサは本来はジョージの後に自ら競技を行うつもりだったが、それは止めて、思うのだった。
(私が先にやらなくて良かった)
と。
コードについてはエピローグ後の幕間にて。




