アカウントは必要ありません。リストから Data APIを探します。データ形式JSON(JavaScript Object Notation)です。
API を使用してやり取りできる各種リソースです。 別ドメインからのアクセスではJSONP形式を選び、取得する側に callback関数(例ではgetJSON関数とする)を実装してください。
リソースの種類 | 説明 | レスポンスヘッダ |
---|---|---|
frames - json | api/frames.json | application/json; charset=UTF-8 |
frames - jsonp | api/frames.json?callback=getJSON | application/javascript; charset=UTF-8 |
POST method でリクエストを送信してください。その他のリクエスト形式では Method Not Allowed をリターンして失敗します。
frames.jsonが受理するパラメタの一覧です。
パラメタの種類 | 説明 | 詳細 |
---|---|---|
t | キャラクターの指定。必須。 | 1~44: Abel~Rolentoまで。 |
v | バージョンの指定。任意。 | 4: ウルトラストリートファイターIV Ver1.05, 5: ウルトラストリートファイターIV OMEGA。 |
URL: https://sf4.sakura.ne.jp/note/api/frames.json?t=1&v=4 (実装サンプルを元に、適宜POSTに変換してください) 説明: ウルトラストリートファイターIV Ver1.05 Abel のフレームデータを返します。 API レスポンス: [ { "Frame": { "id": "3399", "sort": "3399", "char_id": "1", "unity": "3399", "ver": "4", "name": "\u8fd1\u5f31P", "name_eng": "Close LP", "nickname": "\u8fd1\u5f31P", "nickname_eng": "Close Jab", "is_chain": "0", "chains": "", "hit_level": "HL", "damage": "25*15", "damage_int": "40", "shave": "0", "hits": "2", "stun": "30*20", "stun_int": "50", "gain": "20*20", "gain_int": "40", "cancel": "ch\/sp\/su*su", "is_light": "1", "startup": "4", "startup_int": "4", "active": "3(8)3", "active_int": "14", "recovery": "11", "recovery_int": "11", "total": "28", "on_guard": "-3", "on_guard_int": "-3", "on_hit": "0", "on_hit_int": "0", "block_stun": "11", "hit_stun": "14", "full_invincible": "-", "strike_invincible": "-", "projectile_invincible": "-", "throw_invincible": "-", "airborne": "-", "invi_start": "0", "invi_end": "0", "body": "", "body_eng": "", "move": "no", "na_reversal": "0", "na_combo": "0", "is_custom": "0", "is_old": "0", "is_invincible": "0", "ex_fa_fd_on_block": "", "ex_fa_fd_on_hit": "", "user_id": "1", "modified": "2014-09-30 16:44:05" }, "Char": { "id": "1", "sort": "20", "name": "\u30a2\u30d9\u30eb", "name_eng": "Abel", "name_group": "\u3042", "version": "4", "user_count": "0", "topic_count": "2" } } ] 補足: unity 異なるバージョン間で同一の技を識別するためのキー ver バージョン指定 is_chain 派生技かどうか chains どの技に派生するか(複数) damage_int damageの合計値 shave 削り値 is_light 弱攻撃(連キャン判定用) invi_start 物理無敵の開始f move 技の分類 na_reversal reversalのリスト含めない(NA=該当しない) na_combo comboのリストに含めない(NA=該当しない) is_custom 権限なく編集可能 is_old 古いデータ is_invincible 無敵一覧に表示する
一例です。
jquery$.ajax({ type: 'POST', url: 'https://sf4.sakura.ne.jp/note/api/frames.json', datatype: 'jsonp', data: { "t": 1, "v": 4, }, success: function(json) { $.each(json, function(idx, obj) { console.log(obj.Frame.name); }); } });php
$url = "https://sf4.sakura.ne.jp/note/api/frames.json"; $data = http_build_query(array("t" => 1, "v" => 4)); $header = array( "Content-Type: application/x-www-form-urlencoded", "Content-Length: " . strlen($data) ); $options = array("http" => array( "method" => "POST", "header" => implode("\r\n", $header), "content" => $data ) ); $json = file_get_contents($url, false, stream_context_create($options)); $frames = json_decode($json); var_dump($frames);
Street Fighter IV Note. By Joro.