Common Organization of Controls Kit Setup data (日本語)

cock.new および cock.setControls 関数は配列の構築に対して特化した形式のテーブルを受理します。それは以下の簡単な様式です:

 default
   key
     option
       data

Defaults, keys および option は順不同であり任意の様式にすることができます。しかし "data" テーブルはリスト順であり、この様式に続く必要があります:

device, key, inverse, delta

最後の二つの引数は選択制であり未指定時は標準値 (それぞれ "positive cutoff" および "bypass") が設定されます。

用例:

local data = { 
  default_keyboard = { 
    up = { optionA = { "keyboard", "up" }, optionB = { "mouse axis", "y", "negative", "positive cutoff" } },
    down = { optionA = { "keyboard", "down" }, optionB = { "mouse axis", "y", "positive", "positive cutoff" } } 
    }
  default_joystick = {
    up = { optionA = { "joystick hat", "u" }, optionB = { "joystick axis", "y", "negative cutoff" } },
    down = { optionA = { "joystick hat", "d" }, optionB = { "joystick axis", "y", "positive cutoff" } } 
    } 
  }

control:setControls ( data )
control:setDefault ( "default_keyboard" )

これは二種類の標準構成を作成します: default_keyboard および default_joystick です。それぞれ "optionA" および "optionB" があり、二つの異なるキーが同一動作を引き起こします。同時に、これら二つの操作は: "up" および "down" です。したがって全ての標準値および制御を介して選択肢を一致させるべきではないことに注意してください。特定の制御に対する選択肢を指定しない場合は、省略された選択肢は単純に発生しません。さらに、異なる標準値で同様の設定を保持する必要はありません。何かが省略された場合は発生しません。

注意: 一つの制御当たり一つの選択肢のみがある場合は、なんらかの割り当てられた装置が保持する値を設定します。一つ以上ある場合は、最も大きい値が選択されるため、それは効果的にいかなる割り当ての制御を引き起こします。アナログ装置に対しては最も大きな値が選択されます。二つの選択肢において異なる符号の読み取り値がある場合は、それは互いに取り消されます。二つ以上の選択肢および割り当てがある場合は同時に異なる符号の値を与えると、結果としてデータ走査の便宜的な性質によりほぼ未定義になります。それは装置へ割り当てられた正確な値の一部、または取り消された値になります。一方、同じ制御へ二つの異なる軸を正常に割り当てなかったため通常は無関係です。

注意: ジョイスティックの制御を設定する場合、最低でも一本のジョイステックが定義済みであることを確認してください。ジョイステックのフックアップが無い場合は、ダミーのジョイステックを cock.addJoystick(1) にて作成することができます。接続されたジョイスティックが一切無い場合、ジョイステック関連の多数の関数によりゲームはブルー・スクリーンを発生させる結果になります。

関連

そのほかの言語