ホーム › フォーラム › Android,iOS › ランキング実装に向けて
-
投稿者投稿
-
2018-10-02 8:13 pm #15664dai参加者
いつもお世話になっております。
ランキングの実装を考えているのですが
分からない事が多数あるため申し訳ないですが複数回に分けて投稿致します。
お手数お掛けしますが宜しくお願い致します。まず初歩的な事になると思うのですが
とあるカウントを順位表に表示する方法がわかりません。
単純にある結果を結果順に表示と簡易なものでお願いします。(順位切り替えは無しで、イベント内容が複雑になって分からなくなると思うので、すみません)ファイルの方作成しました。
宜しくお願い致します。Attachments:
You must be logged in to view attached files.2018-10-04 12:28 am #15667ラクレス参加者こんばんは
結果を新着順にリストするだけであれば
リストオブジェクトの1行目に結果を挿入していく方法が簡単だと思います
リストオブジェクトが扱うのは文字列なので
挿入する時に値を Str$( ) で囲って文字列に変換してやります文字列オブジェトで表示したい場合はforeachを使って↑のリストから拾ってきます
カウンターで表示したい場合も同じですが val( ) で囲って数値に戻してやる必要がありますAttachments:
You must be logged in to view attached files.2018-10-04 8:37 pm #15670dai参加者サンプルありがとうございます。
サンプルを確認しましたがリストの使用方法がわからず
大きい数字順に並び変える方法がわかりませんでした。
リスト内で並び替えるのか?
あるいはリストから選択文字列等に入れる等考えられるのですが
リストの式にどのように条件を加えれば良いのかわかりません。
お願いします。Attachments:
You must be logged in to view attached files.2018-10-05 12:38 am #15672ラクレス参加者結果を追加表示するだけならリストオブジェクトが一番楽と思いましたが
並べ替えをしたい場合はそれなりに面倒な処理が必要になります
ソート機能を備えたエクステンションが
android/iosビルドに対応したものが無い為(あったらすみません)
一から自作する必要があります並び替えのみに絞ったサンプルを作ってみたので参考にして頂ければと思います
高速ループを使う場合と使わない場合でフレームを分けてあります
表示数の少ないランキングでしたらループを使わずとも作れると思いますが
10位までとなると45行、15位までとなると3桁を越えるイベントが必要になります
ループの方は最初ややこしいかもしれませんが数に関わらず1行で済みます他にもっと色々簡単な組み方があると思いますし
有用なエクステンションもあるかもしれませんのであくまで参考としてm(_ _)mAttachments:
You must be logged in to view attached files.2018-10-05 3:01 pm #15674ラクレス参加者ちなみに結果を1つずつランキングに参加させるやり方についてですが
例えばTOP10ランキングを作る場合
まず 1位 2位 ・・・ 10位 と変数を10個続けて用意し
10位のすぐ後ろに 新着 などの変数を用意しますゲーム結果は 新着 に代入をし その後に
1位~新着 の(11個)の変数を降順ソート処理をしてやる事で
新しい結果をランキングに参加させると同時に 最低記録を 新着 の所に押し出せます
これでランキングが埋まった後(11回目以降)でも
ランク外の成績を除外しつつ新着結果を含めていく事が出来ます2018-10-07 9:43 pm #15679dai参加者サンプルありがとうございます。
ループを使わずTOP10のランキングは出来たのですが
ループを使った場合のTOP50にしたとすると
リストの51番目を新着にするわけですがその新着に数値を入れる方法がわかりません。
出来ればループを使った例のサンプルに変更を加えて頂けると助かります。
お手数お掛けしますがよろしくお願いします。2018-10-07 11:54 pm #15680ラクレス参加者サンプルにも書きましたが ランキング結果を変数(0)から順に使用しているので
変数(数値の数-1)がランキング最下位の数値が入る場所になります
新着を入れる変数はその後ろなのでインデックスは(数値の数)となりますソート手順は 新着が加わる分処理をズラすだけでやり方は同じです
新着を含めたソートにするのでループ回数を 数値の数-1 → 数値の数
にして1増やし 比較を開始するインデックスも 1 ずらして
変数(数値の数-loopindex-1) と 変数(数値の数-loopindex) にすればokです2018-10-11 7:49 pm #15686dai参加者回答ありがとうございます。
ソート処理に関して理解できました。
次にランキングname入力について教えて下さい。
キーボード作成等分からない事が多いためすみませんが別トピックにて
お願いします。 -
投稿者投稿
- このトピックに返信するにはログインが必要です。