private void theGame_Load(object sender, EventArgs e) { this.Owner.Hide(); myHero = (theHero)this.Owner.Tag; this.Tag = myHero; myWorld.init(); //初始化英雄的数据 this.myHero.setTheHeroMaxValue(true); this.myHero.rebuildTheHero(); this.myHero.buildConsumeIndex(); this.myHero.buildBodyIndex(); this.myHero.initBodyIndex(); //更新地图 //初始化背包 myHero.getHeroBag().setOwner(myHero); //设置消息栏 myHero.setMessageBox(this.SystemMsg); //背包初始化 myHero.getHeroBag().updata(myHero); //敌人生成器初始化 AddMobAction.setMyHero(myHero); AddMobAction.setMyWorld(myWorld); //myWorld.showWorld(); //初始化合成器 doCraft.setMyHero(myHero); updata(); updataMap(); //测试模式 setTestMode(false); }
public override void UseItem(theHero user) { base.UseItem(user); getMessageBox().Items.Add("你喝了生水\n口渴度-" + getThristyDecrease() + ",免疫力-" + getImmDecrease() + ""); //System.Console.WriteLine("你喝了生水\n口渴度-"+getThristyDecrease()+",免疫力-"+getImmDecrease()+""); if (user.getThirsty() - getThristyDecrease() <= 0) { user.setThirsty(0); } else { user.setThirsty(user.getThirsty() - getThristyDecrease()); } if (user.getImmunity() - getImmDecrease() <= 0) { user.setImmunity(0); } else { user.setImmunity(user.getImmunity() - getImmDecrease()); } user.setPeeIncreaseIndex(user.getPeeIncreaseIndex() + getPeeIncrease()); user.setShitIncreaseIndex(user.getShitIncreaseIndex() + getShitIncrease()); user.destoryOneItem(this); user.getHeroBag().updata(user); }
public int AttackByBothHand(theHero myHero) { if (myHero.isOutOfEnergy(1)) { getMessageBox().Items.Add("没有多余的精力来攻击了!"); return(0); } int Damage = 0; if (myHero.getHero_LeftHand().getIsEquipedSomething() && myHero.getHero_RightHand().getIsEquipedSomething()) { if (myHero.getHero_LeftHand().getTakeInHand() == myHero.getHero_RightHand().getTakeInHand()) { if (myHero.getHero_LeftHand().getTakeInHand().getType() == 4) { Damage = (int)(myHero.getHero_strength() * 0.8) + dr.getRandomNum(myHero.getHero_RightHand().getTakeInHand().getMinDamage(), myHero.getHero_RightHand().getTakeInHand().getMaxDamage()); // magicDamage = (int)(myHero.getHero_iq() * 0.8) + dr.getRandomNum(myHero.getHero_RightHand().getTakeInHand().getMinMagicDamage(), myHero.getHero_RightHand().getTakeInHand().getMaxMagicDamage()); if (!dr.startBet(myHero.getHero_RightHand().getTakeInHand().getHitRate(), 100)) { getMessageBox().Items.Add("你用拿着" + myHero.getHero_RightHand().getTakeInHand().getName() + "的双手攻击了一次,但没打中"); //System.Console.WriteLine("你用拿着" + myHero.getHero_RightHand().getTakeInHand().getName() + "的双手攻击了一次,但没打中"); return(0); } if (dr.startBet(myHero.getHero_RightHand().getTakeInHand().getGreatDamageRate(), 100)) { Damage = Damage * myHero.getHero_RightHand().getTakeInHand().getGreatDamageIndex(); getMessageBox().Items.Add("你用拿着" + myHero.getHero_RightHand().getTakeInHand().getName() + "的双手攻击了一次,居然出现了暴击!\n造成了" + Damage + "点伤害"); // System.Console.WriteLine("你用拿着" + myHero.getHero_RightHand().getTakeInHand().getName() + "的双手攻击了一次,居然出现了暴击!\n造成了" + Damage + "点伤害"); } else { getMessageBox().Items.Add("你用拿着" + myHero.getHero_RightHand().getTakeInHand().getName() + "的双手攻击了一次\n造成了" + Damage + "点伤害"); // System.Console.WriteLine("你用拿着" + myHero.getHero_RightHand().getTakeInHand().getName() + "的双手攻击了一次\n造成了" + Damage + "点伤害"); } myHero.getHero_LeftHand().getTakeInHand().decreaseEnduranceByAttack(); myHero.getHeroBag().checkItems(); myHero.getHeroBag().updata(myHero); myHero.attackCauseDecreaseEnergy(); return(Damage); } } } getMessageBox().Items.Add("必须要有双手武器才能双手攻击"); // System.Console.WriteLine("必须要有双手武器才能双手攻击"); return(0); }
override public void UseItem(theHero user) { base.UseItem(user); getMessageBox().Items.Add("你吃了一个苹果\n饥饿度-" + getHungryDecrease() + ",口渴度-" + getThristyDecrease() + "\n免疫力-" + getImmDecrease() + ",精力+" + getEnergyIncrease()); //System.Console.WriteLine("你吃了一个苹果\n饥饿度-"+getHungryDecrease()+",口渴度-"+getThristyDecrease()+"\n免疫力-"+getImmDecrease()+",精力+"+getEnergyIncrease()); if (user.getThirsty() - getThristyDecrease() <= 0) { user.setThirsty(0); } else { user.setThirsty(user.getThirsty() - getThristyDecrease()); } if (user.getHungry() - getHungryDecrease() <= 0) { user.setHungry(0); } else { user.setHungry(user.getHungry() - getHungryDecrease()); } if (user.getImmunity() - getImmDecrease() <= 0) { user.setImmunity(0); } else { user.setImmunity(user.getImmunity() - getImmDecrease()); } if (user.getEnergy() + getEnergyIncrease() >= user.getMaxEnergy()) { user.setEnergy(user.getMaxEnergy()); } else { user.setEnergy(user.getEnergy() + getEnergyIncrease()); } user.setPeeIncreaseIndex(user.getPeeIncreaseIndex() + getPeeIncrease()); user.setShitIncreaseIndex(user.getShitIncreaseIndex() + getShitIncrease()); user.destoryOneItem(this); user.getHeroBag().updata(user); }
private void theBag_Load(object sender, EventArgs e) { this.Tag = (theHero)this.Owner.Tag; owner = (theHero)this.Tag; heroBag = owner.getHeroBag(); heroBag.setOwner(owner); //此时向listBox2中填入物品数据,listBox1中填入物品名 //listBox1中的物品名是供用户观看的,真正的操作是在listBox2中运行的 for (int i = 0; i < heroBag.getItemArrayCount(); i++) { listBox2.Items.Add(heroBag.getItemByIndex(i)); listBox1.Items.Add(heroBag.getItemByIndex(i).getName()); } heroBag.updata(owner); updata(); }
public int AttackByLeftHand(theHero myHero) { if (myHero.isOutOfEnergy(1)) { getMessageBox().Items.Add("没有多余的精力来攻击了!"); return(0); } int Damage; if (myHero.getHero_LeftHand().getIsEquipedSomething()) { switch (myHero.getHero_LeftHand().getTakeInHand().getType()) { case 2: { //单手武器 Damage = (int)(myHero.getHero_strength() * 0.5) + dr.getRandomNum(myHero.getHero_LeftHand().getTakeInHand().getMinDamage(), myHero.getHero_LeftHand().getTakeInHand().getMaxDamage()); if (!dr.startBet(myHero.getHero_LeftHand().getTakeInHand().getHitRate(), 100)) { getMessageBox().Items.Add("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手攻击了一次,但没打中"); //System.Console.WriteLine("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手攻击了一次,但没打中"); return(0); } if (dr.startBet(myHero.getHero_LeftHand().getTakeInHand().getGreatDamageRate(), 100)) { Damage = Damage * myHero.getHero_LeftHand().getTakeInHand().getGreatDamageIndex(); getMessageBox().Items.Add("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手攻击了一次,居然出现了暴击!\n造成了" + Damage + "点伤害"); // System.Console.WriteLine("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手攻击了一次,居然出现了暴击!\n造成了" + Damage + "点伤害"); } else { getMessageBox().Items.Add("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手攻击了一次\n造成了" + Damage + "点伤害"); //System.Console.WriteLine("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手攻击了一次\n造成了" + Damage + "点伤害"); } myHero.getHero_LeftHand().getTakeInHand().decreaseEnduranceByAttack(); myHero.getHeroBag().checkItems(); myHero.getHeroBag().updata(myHero); myHero.attackCauseDecreaseEnergy(); return(Damage); } case 3: { Damage = (int)(myHero.getHero_strength() * 0.3); getMessageBox().Items.Add("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手打了一次,\n造成了" + Damage + "点伤害"); //System.Console.WriteLine("你用拿着" + myHero.getHero_LeftHand().getTakeInHand().getName() + "的左手打了一次,\n造成了" + Damage + "点伤害"); myHero.getHero_LeftHand().getTakeInHand().DecreaseEndurance(); myHero.getHeroBag().checkItems(); myHero.getHeroBag().updata(myHero); myHero.attackCauseDecreaseEnergy(); return(Damage); } case 4: { getMessageBox().Items.Add("双手武器不能单手用啦"); // System.Console.WriteLine("双手武器不能单手用啦"); return(0); } default: return(0); } } else { Damage = (int)(myHero.getHero_strength() * 0.2); getMessageBox().Items.Add("你用左手拳头打了一拳,\n造成了" + Damage + "点伤害"); // System.Console.WriteLine("你用左手拳头打了一拳,\n造成了" + Damage + "点伤害"); myHero.attackCauseDecreaseEnergy(); return(Damage); } }
public void updata() { myHero.getHeroBag().updata(myHero); HpBar.Maximum = myHero.getMaxHp(); HpBar.Value = myHero.getHp(); HpBarShow.Text = HpBar.Value + "/" + HpBar.Maximum; HungryBar.Maximum = myHero.getMaxHungry(); HungryBar.Value = myHero.getHungry(); HungryShow.Text = HungryBar.Value + "/" + HungryBar.Maximum; ThirstyBar.Maximum = myHero.getMaxThirsty(); ThirstyBar.Value = myHero.getThirsty(); ThirstyShow.Text = ThirstyBar.Value + "/" + ThirstyBar.Maximum; PeeBar.Maximum = myHero.getMaxPee(); PeeBar.Value = myHero.getPee(); PeeeShow.Text = PeeBar.Value + "/" + PeeBar.Maximum; ShitBar.Maximum = myHero.getMaxShit(); ShitBar.Value = myHero.getShit(); ShitShow.Text = ShitBar.Value + "/" + ShitBar.Maximum; TemperBar.Maximum = (int)myHero.getMaxTemperture(); TemperBar.Value = (int)myHero.getTemperature(); TemperShow.Text = myHero.getTemperature() + "/" + myHero.getMaxTemperture() + "摄氏度"; ImmBar.Maximum = myHero.getMaxImmunity(); ImmBar.Value = myHero.getImmunity(); ImmShow.Text = ImmBar.Value + "/" + ImmBar.Maximum; BloodBar.Maximum = myHero.getMaxBlood(); BloodBar.Value = myHero.getBlood(); BloodShow.Text = BloodBar.Value + "/" + BloodBar.Maximum; PainBar.Maximum = myHero.getMaxPain(); PainBar.Value = myHero.getPain(); PainShow.Text = PainBar.Value + "/" + PainBar.Maximum; EnergyBar.Maximum = myHero.getMaxEnergy(); EnergyBar.Value = myHero.getEnergy(); EnergyShow.Text = EnergyBar.Value + "/" + EnergyBar.Maximum; BurdenBar.Maximum = (int)myHero.getMaxBurden(); BurdenBar.Value = (int)myHero.getBurden(); BurdenShow.Text = myHero.getBurden() + "/" + myHero.getMaxBurden() + "千克"; ExpBar.Maximum = myHero.getMaxExp(); ExpBar.Value = myHero.getExp(); ExpBarShow.Text = ExpBar.Value + "/" + ExpBar.Maximum; hero_level.Text = myHero.getLevel().ToString(); hero_age.Text = myHero.getHero_age().ToString() + "岁"; hero_agility.Text = myHero.getHero_agility().ToString(); hero_bloodtype.Text = tl.BloodTypeToString(myHero.getHero_bloodtype()); hero_charm.Text = myHero.getHero_charm().ToString(); hero_endurance.Text = myHero.getHero_endurance().ToString(); hero_eq.Text = myHero.getHero_eq().ToString(); hero_eye.Text = myHero.getHero_eye().ToString() + "度"; hero_face.Text = myHero.getHero_face().ToString(); hero_group.Text = tl.GroupToString(myHero.getHero_group()); hero_hair.Text = myHero.getHero_hair().ToString() + "根"; hero_height.Text = myHero.getHero_height().ToString() + "厘米"; hero_iq.Text = myHero.getHero_iq().ToString(); hero_job.Text = tl.JobToString(myHero.getHero_job()); hero_lucky.Text = myHero.getHero_lucky().ToString(); hero_money.Text = myHero.getHero_money().ToString() + "元"; hero_sex.Text = tl.SexToString(myHero.getHero_sex()); hero_strength.Text = myHero.getHero_strength().ToString(); hero_talk.Text = myHero.getHero_talk().ToString(); hero_weight.Text = myHero.getHero_weight().ToString() + "千克"; }