NHibernate + SQLite + MVC 开发记录 六

主界面 未完成 


重新设计了一下数据库,改动很大。其中我考虑了一下 首先我要有个最原始的武将库资料,这里装着所有武将的基本属性,
然后各个玩家达到条件都可以招募他,都可以去加强属性,还有穿戴装备之类的操作,于是我把武将的原始属性统一放在一张表里,
CREATE TABLE IF NOT EXISTS o_hero(        --武将
       heroID INTEGER PRIMARY KEY,       
       hname VARCHAR(10) UNIQUE NOT NULL,       
       price INTEGER NOT NULL,    --招募价格         
       skillID INTEGER NOT NULL,--技能 外键  
       armID INTEGER NOT NULL, --兵种 外键     
       heroPic VARCHAR(255) NOT NULL,--头像 路径       
       heroIntro VARCHAR(255) NOT NULL,--介绍       
       governing INTEGER NOT NULL, --统御     
       force INTEGER NOT NULL,     --武力
       intelligence INTEGER NOT NULL, --智力
       
       FOREIGN KEY (skillID) REFERENCES o_skill(skillID),       
       FOREIGN KEY (armID) REFERENCES o_arm(armID)
);
这里的属性不管玩家怎么操作它都是不会变的,然后我建立了一张关系表  r_playerAndHeros:
CREATE TABLE IF NOT EXISTS r_playerAndHeros(
       r_PHID INTEGER PRIMARY KEY,       
       playerID INTEGER NOT NULL,  
            
       heroID INTEGER NOT NULL,       
       heroLevel INTEGER , 
       heroStatus INTEGER NOT NULL,   --可招募:-1,已招募:0,出征中:1,训练中:2
       heroNowTroops INTEGER ,--当前兵力       
       heroMaxTroops INTEGER ,--最高兵力        
       heroExperience INTEGER ,--当前经验 
       addGoverning INTEGER ,--增加的统御
       addForce INTEGER ,--增加的武力 
       addIntelligence INTEGER ,--增加的智力  
                            
       FOREIGN KEY (playerID) REFERENCES o_player(playerID),       
       FOREIGN KEY (heroID) REFERENCES o_hero(heroID)
);
我想这样设计才会是正确的吧。。
接着我修改了我的Mappings.hbm.xml ,还有相应的DAO和SERVICES。耗时2小时,最后测试,很理想。
我有一个App.cs静态类,里面存放一些经常使用的资源,于是我在验证登录成功后把User赋值给了App.user,
然后我需要user账号的所有player角色,把App.user传了过去马上得到了所有角色,
然后再把player传过去 又得到了该角色麾下的所有Hero武将的资料。。。
真的是很理想。 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值