randomize

2014/11/27

Arma3スクリプティング講座その15:Advanced

うん、気づいたら前のを投稿してから2・3週間ぐらい経ってたね。書かなきゃ…
今回はORBATについてやっていきましょうね。

まずORBATって何?って思う人も居ると思いますが…
これです、これこれ。これを使うことで状況説明などが簡潔になったりします。まあ別に使わなくてもいいし面倒くさいし自己満足ってだけだけど…マップ上にマーカーをおくだけで満足な人は…このスクリプトでも使ってください。使い方?めんどくせぇ…あ、0番目が座標、1番目が派閥、2番目が兵科ってなあんばいです。
それでですね、ORBATなんですが…まずは適当にこのミッションを見てみてください。キモはdescription.extですよ。あ、このあたり構文間違えると一撃でArmaが死ぬので要注意ね。このページを参考にしながら。

class CfgORBAT
{
 class B_default
 {
  idType = 0;
  side = "West";
  commander = NATOMen ;

  colorInisgnia[] = {1,1,1,1};
  tags[] = {};

  text = "%1 %2 %3";
  textShort = "%1 %2 %3";
  color[] = {"(profilenamespace getvariable ['Map_BLUFOR_R',0])","(profilenamespace getvariable ['Map_BLUFOR_G',1])","(profilenamespace getvariable ['Map_BLUFOR_B',1])","(profilenamespace getvariable ['Map_BLUFOR_A',0.8])"};
 };

 class PLP_B_1 : B_default
 {
  id = 1;
  size = "Division";
  type = "HQ";
  commanderRank = "Colonel";
  texture = "\A3\ui_f\data\map\markers\nato\b_hq.paa";

  class PLP_B_2 : B_default
  {
   id = 2;
   size = "Company";
   type = "Infantry";
   commanderRank = "Major";
   texture = "\A3\ui_f\data\map\markers\nato\b_inf.paa";
  };

  class PLP_B_3 : B_default
  {
   id = 3;
   size = "Platoon";
   type = "Armored";
   commanderRank = "Corporal";
   texture = "\A3\ui_f\data\map\markers\nato\b_armor.paa";
  };

 };
};
Addonを作ったりしたことのある人にとっては馴染み深い構文ですが…この場合の
class PLP_B_1 : B_default
は、B_defaultを元にするということです。まあ…なんといいますか、一々内容を全部書き込むよりこっちの方がいいよね…ってことで、別に必須じゃないです。

この記事は書きかけです。執筆者が途中で寝てしまいました。加筆するには以下略

6 件のコメント :

  1. このコメントはブログの管理者によって削除されました。

    返信削除
  2. このコメントは投稿者によって削除されました。

    返信削除
  3. シングルプレイでリスポーンさせたり、ユニットを固くする方法が知りたいです

    返信削除
    返信
    1. シングルプレイでリスポーンさせることは出来ません(それっぽくすることはできますが)。
      ユニットを固くするなら
      this addEventHandler ["HandleDamage",{((param [2]) * 0.75)}]
      なりすればよいと思います。*の部分は適当な係数を入れればそれっぽくなるのでは。

      削除
  4. よく見ると前回とつながってませんよ

    返信削除
    返信
    1. そりゃあ、繋げてないからですよ

      削除

注: コメントを投稿できるのは、このブログのメンバーだけです。