ハイスコアランキングは1周目と2周目で別々に記録したい。
こっちはもともと複数のレコードから、上位10件をselectしてただけなので、loopnumのカラムを追加して、WHERE句に条件を追加すればいいね。
sql_q "SELECT *,substr(strftime('%Y/%m/%d',rec_date),3) as r_date FROM scorelist WHERE loopnum="+str(u_loopnum)+" ORDER BY score DESC ,rec_date LIMIT 10"
初期スコアレコードも1周目、2周目ごとの20レコード準備するように変更した。
ランクインしたかどうかは、先に取得した上位10レコードの配列としか比較しないので、loopnumのカラムを追加するだけでよかった。
あとは、ステージクリアして、エンディングをスタートする前に、DBのacflgを1にUpdateする処理を加えた。
sql_open "baious_ex.db" sql_q "UPDATE config SET acflg=1 WHERE ID=1" sql_close u_acflg=1
これで、システム周りの2周目対応を一通り終えた。
あとは、2周目のステージ構成をどうするか考えるのだが、その前にシステム的にやりたいことがあるので、それは次回。