プチコンまとめWiki (初代/mkII)

投稿プログラム : ドミニオンセレクタ

2011年05月10日投稿 / 投稿者 : 名無しさん / タグ : 投稿プログラム ゲーム ツール

概要

デッキ構築型カードゲーム「ドミニオン」で使用する王国カード10種をランダムに選択するツールです。
ドミニオン派生系のゲーム(「サンダーストーン」「たんとくお〜れ」など)でもデータを変更すれば使用できます。

使い方

実行すると、画面下半分に王国カードの一覧と出現頻度が表示されます。
デフォルト(プログラムリスト通り)の場合、出現頻度は全て5となっています。

以下の操作で、出現頻度を変更し、10種を選択します。

/王国カードの選択
/出現頻度の変更(-1/+1)
К+/К+出現頻度の変更(-10/+10)
А王国カードの選択
STARTプログラムの終了

十字キーの左右(L+左右)で出現頻度の調整を行い、Aボタンで選択された10種を表示となります。
出現頻度は(0〜99)の範囲で変更可能です。0にすると選択されなくなります。

選択された10種は画面上半分に表示されます。

出現頻度の値は記録されないので、プログラムリスト中のDATA文の値を変更すれば、デフォルトの値を変更しておくことができます。

プログラムリストでは「ドミニオン」の基本セットの王国カードしか記述していませんが、
3行目のDIMで宣言している配列の数、4行目のCNTの値、DATA文を編集すれば王国カードを追加できます。

プログラムリスト

  1. CLEAR:CLS
  2. DIM CN$(25),CC(25),CV(25),CVO(25),FLG(25)
  3. CNT=25
  4. SUM=0
  5. FOR I=0 TO CNT−1
  6.  READ CN$(I)
  7.  READ CC(I)
  8.  READ CVO(I)
  9. NEXT
  10. CUR=0
  11. @LOOP
  12. OK=NOT K:K=BUTTON():OK=OK AND K
  13. GOSUB@DMENU
  14. IF OK AND 1 THEN GOSUB@UP:GOTO@VS
  15. IF OK AND 2 THEN GOSUB@DN:GOTO@VS
  16. IF(K AND 256)+(OK AND 4)==260 THEN GOSUB@LL:GOTO@VS
  17. IF(K AND 256)+(OK AND 8)==264 THEN GOSUB@LR:GOTO@VS
  18. IF OK AND 4 THEN GOSUB@LF:GOTO@VS
  19. IF OK AND 8 THEN GOSUB@RT:GOTO@VS
  20. IF OK AND 16 THEN GOSUB@A:GOTO@VS
  21. IF OK AND 1024 THEN GOSUB@ST:GOTO@VS
  22. @VS
  23. VSYNC 1
  24. GOTO@LOOP
  25. @UP
  26. CUR=(CUR+CNT−1)%CNT
  27. RETURN
  28. @DN
  29. CUR=(CUR+1)%CNT
  30. RETURN
  31. @LF
  32. CVO(CUR)=CVO(CUR)−(CVO(CUR)>0)
  33. RETURN
  34. @LL
  35. CVO(CUR)=CVO(CUR)−10
  36. IF CVO(CUR)<0 THEN CVO(CUR)=0
  37. RETURN
  38. @RT
  39. CVO(CUR)=CVO(CUR)+(CVO(CUR)<99)
  40. RETURN
  41. @LR
  42. CVO(CUR)=CVO(CUR)+10
  43. IF CVO(CUR)>99 THEN CVO(CUR)=99
  44. RETURN
  45. @A
  46. GOSUB@SEL
  47. RETURN
  48. @ST
  49. END
  50. @DMENU
  51. COLOR 6:LOCATE 0,0:?”DOMINION SELECTOR”
  52. FOR I=−4 TO 5
  53.  LOCATE 3,16+I
  54.  ?”                          ”
  55.  IF((I+CUR<0)OR(I+CUR>CNT−1))GOTO@EIF
  56.   LOCATE 5−LEN(STR$(CVO(CUR+I))),16+I
  57.   COLOR CC(CUR+I)
  58.   ?CVO(CUR+I)” ”CN$(CUR+I)
  59.  @EIF
  60. NEXT
  61. COLOR CC(CUR):LOCATE 1,16:?”Й”
  62. RETURN
  63. @CSUM
  64. SUM=0
  65. FOR I=0 TO CNT−1
  66.  SUM=SUM+CVO(I)
  67.  CV(I)=SUM
  68. NEXT
  69. RETURN
  70. @SEL
  71. GOSUB@CSUM
  72. CLS:LOCATE 0,1
  73. FOR I=0 TO CNT−1
  74.  FLG(I)=0
  75. NEXT
  76. FOR I=0 TO 9
  77.  LOCATE 1,1+I
  78.  @RE
  79.  V=RND(SUM)
  80.  FOR J=0 TO CNT−1
  81.   IF V>=CV(J) GOTO @JN
  82.    IF FLG(J)==1 THEN J=CNT+5:GOTO@JN
  83.    COLOR CC(J):?CN$(J)
  84.    FLG(J)=1
  85.    J=CNT
  86.   @JN
  87.  NEXT J
  88.  IF J>CNT+5 GOTO @RE
  89. NEXT I
  90. RETURN
  91. ’ナマエ,イロ,シュツケ゛ンヒント゛
  92. DATA”ホリ/MOAT”,9,5
  93. DATA”レイハイト゛ウ/CHAPEL”,0,5
  94. DATA”チカチョソ゛ウコ/CELLAR”,0,5
  95. DATA”ムラ/VILLAGE”,0,5
  96. DATA”キコリ/WOODCUTTER”,0,5
  97. DATA”サイショウ/CHANCELLOR”,0,5
  98. DATA”コウホ゛ウ/WORKSHOP”,0,5
  99. DATA”ヤクニン/BUREAUCART”,0,5
  100. DATA”ト゛ロホ゛ウ/THIEF”,0,5
  101. DATA”シュクエン/FEAST”,0,5
  102. DATA”カネカシ/MONEYLENDER”,0,5
  103. DATA”ミンヘ゜イ/MILITIA”,0,5
  104. DATA”カシ゛ヤ/SMITHY”,0,5
  105. DATA”ミッテイ/SPY”,0,5
  106. DATA”キ゛ョクサ゛ノマ/THRONE ROOM”,0,5
  107. DATA”カイチク/REMODEL”,0,5
  108. DATA”ショコ/LIBRARY”,0,5
  109. DATA”マシ゛ョ/WITCH”,0,5
  110. DATA”シュクサイ/FESTIVAL”,0,5
  111. DATA”ケンキュウシ゛ョ/LABORATORY”,0,5
  112. DATA”イチハ゛/MARKET”,0,5
  113. DATA”コウサ゛ン/MINE”,0,5
  114. DATA”キ゛シ゛ト゛ウ/COUNCIL ROOM”,0,5
  115. DATA”ホ゛ウケンシャ/ADVENTURER”,0,5
  116. DATA”テイエン/GARDENS”,4,5

CHECKER FLAG (ひとことコメント)

この作品に対するコメントがあれば一言どうぞ。(作品に直接関係ない質問や雑談は掲示板へ)

  • 名無しさん : 69行目のCVO(CUR(I)は、CVO(CUR+I)の間違い? (2011/05/10 (火) 21:53:44)
  • 名無しさん : あと、112行目のDATAで、文字列の中にダブルクォーテーションがあるのはまずいかと (2011/05/10 (火) 22:00:51)
  • 名無しさん : 作者ではないけど推測で51行目(条件)・69行目・112行目を修正。 (2012/09/07 (金) 21:24:06)

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.026 秒 | このページの最終更新 : 2012/09/07 (金) 21:24:06 (2599d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30