HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2011
0316
mrtriphsptv_up(HSP TV ランキングに関する命令)のオプション値1解決


mrtrip

リンク

2011/3/16(Wed) 12:35:42|NO.37621

決して上級者とは言えない者です。
回答よろしくお願いします〜。


hsptvのゲームを作っているのですが、ランキング機能をランキング以外の形として利用したいと考えております。


ランキングはスコアが高い順に登録され、そこが面倒なのですが、hsptv_up命令のオプション値を使えばなんとかなると思っています。


例えばオプション値が0x3000であれば、任意のインデックスのスコアを消すことができます。


しかしスコアを消すと、ランキングのそれより下位のスコアがシフトされません。


例:
スコア:5
スコア:4
スコア:3
スコア:2
スコア:1

↓インデックス2(上から三番目)を消す

スコア:5
スコア:4
スコア:0
スコア:2
スコア:1
(5,4,2,1とならず、0が残る)



これが解消されれば、理論上自分のゲームは成立可能ってところです。


そこで質問ですが、
スコアの上書き(すでにあるものをけして、インデックスに書き換える)や、スコアを完全に消去(0を残さず、下位のものをシフトさせる)できるhsptv_upのオプション値があれば教えていただけませんか?


どんなゲームかもよくわからないと思うので恐縮なのですが、あまりネタバレしたくないので…。


また、オプション値0x3000で、上の例のようにひとつスコアを消去したあと、下位のスコアをひとつひとつ更新させる、というのはタイムラグが発生するため、避けたいです。
(リアルタイムでランキングの情報が必要なので)
不可能なスクリプトの例:
(nは、消去するインデックス番号)

#include "hsptv.as" (略) hsptv_up n,"",0x3000 ;n+1位のスコア消去 repeat 29-n,n+1 hsptv_getrank score,name,comm,cnt ;n+2〜30位のスコア取得 hsptv_up score,comm ;スコアを正規の順位へ再送信 loop
まあこのスクリプトは、ユーザー名が再送信できない点でもダメなんですが。


オプション値の件や、他の解決法でも、遠慮なさらずお願いします。



この記事に返信する


mrtrip

リンク

2011/3/17(Thu) 00:23:24|NO.37639

http://hsp.tv/play/pforum.php?mode=all&num=36430



などの記事を読み、
#runtime "hsptv"
#regcmd 18 #cmd hsptv_send $00 (後略)
を使うことにしました。
吟味してくださった方々ありがとうございました。
もしよければ、上記スクリプトについて詳細を解説いただければ(正直わけわかめ



ONION software Copyright 1997-2023(c) All rights reserved.