Update process_description.md
This commit is contained in:
parent
12de68320f
commit
de26351980
1 changed files with 103 additions and 17 deletions
|
@ -39,6 +39,19 @@ wallet3 joinRoom
|
|||
|
||||
wallet4 joinRoom
|
||||
|
||||
- *Подтверждение готовности к игре участниками*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet2.json -g gas_payment contractHash confirmReadiness roomId wallet2Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID комнаты, которое заранее передано игроку вне данной системы
|
||||
|
||||
##### Аналогично для:
|
||||
|
||||
wallet3 confirmReadiness
|
||||
|
||||
wallet4 confirmReadiness
|
||||
|
||||
- *Запуск игры хостом*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet1.json -g gas_payment contractHash startGame roomId wallet1Hash```
|
||||
|
@ -55,31 +68,104 @@ wallet4 joinRoom
|
|||
1. roomId - ID созданной комнаты
|
||||
2. tokenId - ID токена. Так как вопросы хоста представляются в виде уникальных NFT-токенов, то мы передаем их ID
|
||||
|
||||
- *Старт вопроса текущего раунда*
|
||||
- *Отправка ответа на вопрос*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet2.json -g gas_payment contractHash sendAnswer roomid text wallet2Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID созданной комнаты
|
||||
2. text - ответ на вопрос
|
||||
|
||||
##### Аналогично для:
|
||||
|
||||
invokeFunction wallet1.json contractid startQuestion roomid --wallet1
|
||||
invokeFunction wallet2.json contractid sendAnswer roomid (string) --wallet2
|
||||
wallet3 sendAnswer
|
||||
|
||||
wallet4 sendAnswer
|
||||
invokeFunction wallet1.json contractid endQuestion roomid --wallet1
|
||||
invokeFunction wallet2.json contractid chooseAnswer roomid <int> --wallet2
|
||||
wallet3 chooseAnswer
|
||||
wallet4 chooseAnswer
|
||||
invokeFunction wallet1.json contractid getWinner roomid --wallet1
|
||||
|
||||
повторяется игровой цикл
|
||||
setQuestion
|
||||
startQuestion
|
||||
sendAnswers..
|
||||
endQuestion
|
||||
chooseAnswers..
|
||||
getWinner
|
||||
- *Завершение принятие ответов (раунда)*
|
||||
|
||||
invokeFunction wallet1.json contractid endGame roomid --wallet1
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet1.json -g gas_payment contractHash endQuestion roomid wallet1Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID созданной комнаты
|
||||
|
||||
- *Отдача голоса за лучший ответ*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet2.json -g gas_payment contractHash voteAnswer roomId answerIdx wallet2Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID созданной комнаты
|
||||
2. answerIdx - индекс для сохранения порядка, в котором пишутся ответы при отправке игроками
|
||||
|
||||
##### Аналогично для:
|
||||
|
||||
wallet3 voteAnswer
|
||||
|
||||
wallet4 voteAnswer
|
||||
|
||||
- *Завершение раунда*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet1.json -g gas_payment contractHash getRoundWinner roomId wallet1Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID созданной комнаты
|
||||
|
||||
|
||||

|
||||
*Далее повторяется игровой цикл:*
|
||||
|
||||
askQuestion..
|
||||
|
||||
sendAnswer..
|
||||
|
||||
endQuestion..
|
||||
|
||||
voteAnswer..
|
||||
|
||||
getRoundWinner..
|
||||
|
||||
|
||||
- *Отдача голоса за завершение игры (без учета мнения хоста)*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet2.json -g gas_payment contractHash voteToFinishGame roomId wallet2Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID созданной комнаты
|
||||
|
||||
##### Аналогично для:
|
||||
|
||||
wallet3 voteToFinishGame
|
||||
|
||||
wallet4 voteToFinishGame
|
||||
|
||||
- *Завершение игры*
|
||||
|
||||
```$ ./bin/neo-go contract invokefunction -r http://localhost:20331 -w wallet1.json -g gas_payment contractHash manuallyFinishGame roomId wallet1Hash```
|
||||
|
||||
##### Аргументы метода:
|
||||
1. roomId - ID созданной комнаты
|
||||
|
||||
|
||||
### Команды для взаимодействия с NFT-токенами
|
||||
|
||||
- Проверка баланса
|
||||
|
||||
```neo-go wallet nep17 balance --token GAS -r http://localhost:30333 -w /path/to/frostfs-aio/wallets/wallet1.json```
|
||||
|
||||
- Компиляция и деплой
|
||||
|
||||
```neo-go contract compile -i nep11/contract.go -o nep11/contract.nef -m nep11/contract.manifest.json -c nep11/contract.yml```
|
||||
|
||||
```neo-go contract deploy -i nep11/contract.nef -m nep11/contract.manifest.json -r http://localhost:30333 -w /path/to/frostfs-aio/wallets/wallet1.json [ walletHash ]```
|
||||
|
||||
- Трансфер любого токена
|
||||
|
||||
```neo-go wallet nep17 transfer -r http://localhost:30333 -w /path/to/frostfs-aio/wallets/wallet1.json --from walletHash --to walletHash --amount 20 --token GAS nft-name --await```
|
||||
|
||||
- Трансфер любого NFT-токена
|
||||
|
||||
```neo-go wallet nep11 transfer -r http://localhost:30333 -w /path/to/frostfs-aio/wallets/wallet1.json --from walletHash --to walletHash --token question --id contractId --await```
|
||||
|
||||

|
||||
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue