[스팀몬스터] 일퀘 그리고 일 보상 프로그램 수정

Words
139
Reading
1 min
Listen
Play
7y

물팀이 일퀘로 나왔습니다. 주말 저녁 일퀘를 하면서 한가함을 채워갑니다.

오호 이번에는 ORB 팩이 하나 나왔군요. 그런데 픽몬에서의 카드 가치에서는 Orb가 빠져있습니다.

그래서 기존에 사용하던 프로그램에 Orb를 추가해보았습니다.

quest로 받은 팩의 내용을 볼 수 있는 API는 아래와 같습니다.

https://api.steemmonsters.io/players/history?username=tradingideas&from_block=-1&limit=250&types=sm_claim_reward,claim_reward

이번에 보상의 종류가 변경되면서 이 API에서 돌려주는 데이터의 구조가 변경이 되었습니다. 아래와 같이 'type'이라는 keyword가 생겼고, type의 값에는 아래와 같이 4가지 값이 가능합니다.

  • reward_card
  • pack
  • dec
  • potion

이 변화를 반영한 코드는 아래과 같습니다.

        for cd in cards :
            card = cd
            if 'type' in card :
                if card['type'] == 'reward_card' :
                    card = cd['card']
                elif card['type'] == 'pack' :
                    val = open_cards[card_len-1]
                    val[0] += 1
                    continue
                elif card['type'] == 'dec' :
                    val = open_cards[0]
                    val[0] += card['quantity']
                    continue
                else :
                    continue

potion의 가치는 측정이 어려우니 무시하고 DEC와 Orb에 대해서는 적절한 가치를 추가하여 계산을 하는 코드를 추가하였습니다.

이렇게 변경해서 나온 결과입니다.

[스팀몬스터] 일퀘 그리고 일 보상 프로그램 수정 | Ecency