O Django Wars foi idealizado e desenvolvido no Django 1.4. Algumas funcionalidades aqui descritas podem não funcionar ou funcionar de forma diferente em outras versões do Django
Quando o jogador dá level up ele ganha pontos para distribuir em seus stats.
O que vamos fazer agora é criar a página de exibição dos stats atual e, se o usuário tiver pontos, distribuir esses pontos nos stats do usuário.
Primeiro, colocar a url no urls.py:
url(r'^stats/$', djangowars.views.player.stats, name='pagina_de_stats'),
Agora, como é de se esperar, vamos construir a view.
Esta view precisa pegar o usuário e passar para o template para a listagem dos stats.
O arquivo é o views/player.py:
# pagina de stats do jogador def stats(request): if not request.user.is_authenticated(): return redirect('pagina_de_login') #da um refrash no hp, energia e raiva do player player = request.user.get_profile() player.refresh() player.save() return render_to_response("stats.html", {"player": player, "vida": player.vida * 10}) # para exibir o total de vida do usuario
Por fim, só fazer o template.
OH MY GOD, tá tudo tão difícil…
To escutando Edson Gomes que um amigo do trabalho acabou de me passar.
Muito bom.
Sim, o arquivo é stats.html:
<div class="container"> <p> Informações do usuário: Nível {{ player.nivel }} | Energia {{ player.energia_atual }}/{{ player.energia }} | Raiva {{ player.raiva_atual }}/{{ player.raiva }} HP: {{ player.hp }}/{{ vida }} | Carteira {{ player.carteira }} </p> <!--lista de crimes que podem ser cometidos--> <h3>Stats</h3> <p>Ataque: {{ player.ataque }} {% if player.pontos > 0 %}<a href="adicionar/ataque">+1</a>{% endif %}</p> <p>Defesa: {{ player.defesa}} {% if player.pontos > 0 %}<a href="adicionar/defesa">+1</a>{% endif %}</p> <p>Vida: {{ vida }} {% if player.pontos > 0 %}<a href="adicionar/vida">+1</a>{% endif %}</p> <p>Energia: {{ player.energia}} {% if player.pontos > 0 %}<a href="adicionar/energia">+1</a>{% endif %}</p> <p>Raiva: {{ player.raiva}} {% if player.pontos > 0 %}<a href="adicionar/raiva">+1</a>{% endif %}</p> <p>Pontos para gastar: {{ player.pontos }}</p> </div> <!-- /container -->
Hoje estou com preguiça de colocar o link do código fonte do projeto que está no GitHub.
PS: Esse Edson Gomes é bom demais, fala sério!!!
One thought on “Django Wars [Parte 24]: Stats do jogador”