def setUp(self): Hero.objects.all().delete() self.h1 = Hero(name=u'Książę Karol') self.h2 = Hero(name=u'Królowa Karolina') self.h1.save() self.h2.save() reka = ItemSlot(name=u'prawa ręka') reka.save() self.sword = Item(name=u'Srebrny Miecz', location=reka, min_lvl=0) Item.objects.all().delete() self.sword.save() self.sword.spawn(1, self.h1).save()
def registration(request, template_name='main/registration.html'): if request.method == 'POST': form = RegistrationForm(request.POST) if form.is_valid(): hero = Hero(login=form.cleaned_data['login'], password=form.cleaned_data['password1'], email=form.cleaned_data['email'], sex = form.cleaned_data['sex']) hero.save() request.session['hero_id'] = hero.id return HttpResponseRedirect(reverse('hero')) else: form = RegistrationForm() variables = RequestContext(request, {'form': form}) return render_to_response(template_name, variables)
def registration(request, template_name='main/registration.html'): if request.method == 'POST': form = RegistrationForm(request.POST) if form.is_valid(): hero = Hero(login=form.cleaned_data['login'], password=form.cleaned_data['password1'], email=form.cleaned_data['email'], sex=form.cleaned_data['sex']) hero.save() request.session['hero_id'] = hero.id return HttpResponseRedirect(reverse('hero')) else: form = RegistrationForm() variables = RequestContext(request, {'form': form}) return render_to_response(template_name, variables)
def update_hero_cache(): Card.create_cache() Hero.create_cache() HeroEvolveCosts.create_cache() HeroSkill.create_cache() Warrior.create_cache() WarriorLevel.create_cache() HeroLevel.create_cache() HeroStarUpgrade.create_cache() HeroMaster.create_cache() HeroAttribute.create_cache() HeroDestiny.create_cache() HeroStar.create_cache() # HeroTrain.create_cache() HeroTeam.create_cache() HeroTeamLevel.create_cache() HeroBubble.create_cache() HeroCombat.create_cache()
class TestCase(unittest.TestCase): def setUp(self): Hero.objects.all().delete() self.h1 = Hero(name=u'Książę Karol') self.h2 = Hero(name=u'Królowa Karolina') self.h1.save() self.h2.save() reka = ItemSlot(name=u'prawa ręka') reka.save() self.sword = Item(name=u'Srebrny Miecz', location=reka, min_lvl=0) Item.objects.all().delete() self.sword.save() self.sword.spawn(1, self.h1).save() def test_ownership(self): foundItems = ItemInstance.objects.filter(owner=self.h1) print type(foundItems) self.assertEqual(foundItems.count(), 1) self.assertEqual(foundItems[0].item.name, u'Srebrny Miecz')
def setUp(self): self.malkavian = BloodLine(name="Malkavian", power=8, resistance=8, dexterity=8, perception=9, intelligence=10, web=10, artifice=1, hp=10, ap=100, speed=100, detection=0, hide=2, trade=0) self.malkavian.save() self.knight = Profession(name="knight", power_cost=30, resistance_cost=30, dexterity_cost=30, perception_cost=30, intelligence_cost=30, web_cost=30, artifice_cost=30, detection_cost=10, hide_cost=10, trade_cost=10) self.knight.save() self.hero = Hero(max_load=100, name="Baron Duck", lvl=200, lvl_points=0, blood_line=self.malkavian, profession=self.knight, experience=0, energy=100, energy_regeneration=30, gold=12345, power=70, resistance=170, dexterity=270, perception=370, intelligence=470, web=570, artifice=670, hp=770, ap=870, speed=970, detection=1070, hide=1170, trade=1270) self.hero.save()
class HeroTalents(TestCase): def setUp(self): self.malkavian = BloodLine(name="Malkavian", power=8, resistance=8, dexterity=8, perception=9, intelligence=10, web=10, artifice=1, hp=10, ap=100, speed=100, detection=0, hide=2, trade=0) self.malkavian.save() self.knight = Profession(name="knight", power_cost=30, resistance_cost=30, dexterity_cost=30, perception_cost=30, intelligence_cost=30, web_cost=30, artifice_cost=30, detection_cost=10, hide_cost=10, trade_cost=10) self.knight.save() self.hero = Hero(max_load=100, name="Baron Duck", lvl=200, lvl_points=0, blood_line=self.malkavian, profession=self.knight, experience=0, energy=100, energy_regeneration=30, gold=12345, power=70, resistance=170, dexterity=270, perception=370, intelligence=470, web=570, artifice=670, hp=770, ap=870, speed=970, detection=1070, hide=1170, trade=1270) self.hero.save() def test_contains(self): self.talent1 = Talent(name="Overpower") self.talent1.save() self.talent2 = Talent(name="Overpower2") self.talent2.save() self.hero.talents.add(self.talent1) self.assertTrue(self.hero.have_talent(self.talent1), "Bohater posiada talent") self.assertFalse(self.hero.have_talent(self.talent2), "Bohater nie posiada talentu") def test_meets_bloodline_requirament(self): self.malkavian2 = BloodLine(name="Malkavian2", power=8, resistance=8, dexterity=8, perception=9, intelligence=10, web=10, artifice=1, hp=10, ap=100, speed=100, detection=0, hide=2, trade=0) self.malkavian2.save() self.talent1 = Talent(name="Overpower") self.talent1.save() self.talent2 = Talent(name="Overpower2", blood_line_requirement=self.malkavian) self.talent2.save() self.talent3 = Talent(name="Overpower3", blood_line_requirement=self.malkavian2) self.talent3.save() self.assertTrue(self.hero.meets_bloodline_requirament(self.talent1), "Dla talentu z brakiem wymagania lini krwii") self.assertTrue(self.hero.meets_bloodline_requirament(self.talent2), "Dla talentu z wymaganiem posiadanej lini krwii") self.assertFalse(self.hero.meets_bloodline_requirament(self.talent3), "Dla talentu z wymaganiem nieposiadanej lini krwii")
def mutate(root, info, input=None): ok = True hero_instance =\ Hero(name=input.name, gender=input.gender, mainTeam=input.mainTeam) hero_instance.save() return CreateHero(ok=ok, hero=hero_instance)
def get_hero(pk): return Hero.get(int(pk))
# coding: utf-8 from armory.models import Weapon from hero.models import Hero __author__ = 'episage' from armory.models import * from django.core.management import call_command call_command('reset', 'hero') rycerz = Hero(name='rycerz tomek') rycerz.save() miecz = Weapon( name='miecz', speed=2, hit_bonus=4, piercing_dmg=12, energetic_dmg=0, critical=20 ) miecz.save() miecze = miecz.spawn(2, rycerz) miecze.save() grosz = Money( name='Grosz', weight=0.00164 ) grosz.save()
class HeroUpdateStatistics(TestCase): def setUp(self): self.malkavian = BloodLine(name="Malkavian", power=8, resistance=8, dexterity=8, perception=9, intelligence=10, web=10, artifice=1, hp=10, ap=100, speed=100, detection=0, hide=2, trade=0) self.malkavian.save() self.knight = Profession(name="knight", power_cost=30, resistance_cost=30, dexterity_cost=30, perception_cost=30, intelligence_cost=30, web_cost=30, artifice_cost=30, detection_cost=10, hide_cost=10, trade_cost=10) self.knight.save() self.hero = Hero(max_load=100, name="Baron Duck", lvl=200, lvl_points=0, blood_line=self.malkavian, profession=self.knight, experience=0, energy=100, energy_regeneration=30, gold=12345, power=70, resistance=170, dexterity=270, perception=370, intelligence=470, web=570, artifice=670, hp=770, ap=870, speed=970, detection=1070, hide=1170, trade=1270) self.hero.save() def test_one_effect(self): self.hero.talents.create(name="Overpower") self.hero.talents.all()[0].effects.create(value=10, variable=1, percent=False, where_works=1) self.assertEqual(self.hero.power + 10, self.hero.get_updated_statistic(1)) def test_many_effect(self): self.hero.talents.create(name="Overpower") talent = self.hero.talents.all()[0] talent.effects.create(value=10, variable=1, percent=False, where_works=1) talent.effects.create(value=20, variable=1, percent=False, where_works=1) talent.effects.create(value=15, variable=1, percent=True, where_works=1) talent.effects.create(value=25, variable=1, percent=True, where_works=1) talent.effects.create(value=1000, variable=2, percent=False, where_works=1) talent.effects.create(value=1000, variable=1, percent=False, where_works=2) self.assertEqual((self.hero.power + 30) * 1.4, self.hero.get_updated_statistic(1)) def test_many_talents(self): talents_set = set() add_number = 10 for i in range(1, add_number + 1): talent = Talent(name="talent " + str(i)) talent.save() talent.effects.create(value=1, variable=1, percent=False, where_works=1) self.hero.talents.add(talent) self.assertEqual(self.hero.power + add_number, self.hero.get_updated_statistic(1)) def test_many_talents_many_effects(self): talents_set = set() add_number = 10 for i in range(1, add_number + 1): talent = Talent(name="talent " + str(i)) talent.save() talent.effects.create(value=1, variable=1, percent=False, where_works=1) talent.effects.create(value=2, variable=1, percent=False, where_works=1) talent.effects.create(value=3, variable=1, percent=True, where_works=1) talent.effects.create(value=4, variable=1, percent=True, where_works=1) self.hero.talents.add(talent) self.assertEqual((self.hero.power + 3 * add_number) * 1.7, self.hero.get_updated_statistic(1)) def test_min_border(self): self.hero.talents.all()[0].effects.create(value=-self.hero.power, variable=1, percent=False, where_works=1) self.assertEqual(1, self.hero.get_updated_statistic(1))