Open NoxArt opened 10 years ago
Aktuální hodnocení kola teda můžeš vytáhnout z round_started (viz databáze), ještě jsem přidal command get_scores (viz Wiki)
A doplnil command do Game, vrací Map<String, Integer> ~ Map<player_name => score> commit 8db6522d33
Mohl bys prosím vysvětlit na co potřebujeme metodu getScores()? Server to pošle automaticky, ne?
V message round_started
v data: evaluation
jsou hodnocení, ale hodnocení za 1 kolo.
GetScores jsou hodnocení hráčů dohromady za všechny kola (nemusíš dělat součet v aplikaci).
Přemýšlím, že by v evaluation místo player_id mohly být taky jména ... to si kdyžtak řekni
Jasně, díky. Jména by byli lepší, protože id v aplikaci neznáme a nemůžeme je namapovat. Také podle mě bylo by dobrý kdyby zpráva s hodnocením kola také obsahovala slová, která hrače vyplnili. Aby bylo vídět za která slova kolika bodů dostal každý hrač. Co myslíš?
Změnil jsem v evaluation player_id na player_name
Přidal jsem do start_round
kromě evaluation
s hodnocením taky previous_letter
s písmenem z předchozího kola a words
se všemi vyplněnými slovy { player_name: ",,slovo3,slovo4,", player_name: "slovo1,,,slovo4,slovo5",... }
To player name už vidím, ale slova zatím ne.. Tady je zpráva {"id":"2047","type":"round_started","data":"{\"round\":2,\"time\":1385938572,\"letter\":\"u\",\"evaluation\":{\"User\":[10,10,0,0,0]},\"words\":[],\"previous_letter\":\"h\"}"}]}
Zkus teď prosím
Už funguje, díky
super
Zkusel jsem get_scores. Mohl bys prosím udělat aby tam byli také jména hračů kromě bodů? Tady je zpáva kterou dostal jsem 12-02 16:49:15.113: W/get_scores(1080): command=get_scores&game_id=291 12-02 16:49:15.113: W/get_scores(1080): {"result":{"":20}}
Zkus prosím teď
Už funguje, díky
Přidal jsem hodnocení. Neměl jsem ale čas to otestovat s více než jedním hráčem.
Zkusil jsem záhrat s více než jedním hráčem a z nějakého důvodu to nejde. Nemůžu přejit od posledního kola do hodnocení, protože nedostavám zprávu round_started, pokud je tam více než jeden hrač. Pokud hrač je jeden, tak prně dostanu zprávu game_finished, pak round_started. Když mám dva hrače, tak dostavám zprávu game_finished, ale nedostavám round_started.
Kouknu se na to
A odesíláš i slova ostatních hráčů?
Ano. V databazi je to vídět - posledni hra, id 364
Vidím to tam, ale zatim mi to nejde reprodukovat (resp. mě to teď funguje dobře)
Aha, už možná chápu
Zkus teďka
Ona ta game_finished uzavřela hru a byla tam na to podmínka, teď už jde posílat i potom
Pardon, že tak dlouho jsem odpovidal, nebyl jsem doma. Zkusil jsem to ted' a je to stejný.. hra 365
Tak teï u¾ by to opravdu mìlo jít
Dne 7. prosince 2013 21:00 IevgenRagulin notifications@github.comnapsal(a):
Pardon, ¾e tak dlouho jsem odpovidal, nebyl jsem doma. Zkusil jsem to ted' a je to stejný.. hra 365
Reply to this email directly or view it on GitHubhttps://github.com/NoxArt/CityNameAnimal/issues/16#issuecomment-30063348 .
díky, už to jede
Už by mělo být možno posílat hráčova slova
Na server jsem přidal handler, že pokud
zpráva == send_words & count(unique(send_words od hráčů v daném kole)) == player_count
, tak se aktivuje nové kolo přidáním zprávyround_started
, stejně jak to bylo minulé kolo. Pokud ovšemround == round_limit
, tak se místo toho přidágame_finished
.Jakmile bude nějaká databáze (wink, wink), tak přidám ještě před to vložení zprávy o bodech hráčů
Takže s vynecháním bodování by už mělo být teoreticky možné dodělat komplet hraní hry?
(updatována wiki - dole message)