




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计用纸摘要对于小区物业管理来说,其工作流程的繁杂性、多样化、管理复杂、收缴费用与设备维护繁琐。计算机已完全能够胜任物业管理工作,而且更加准确、方便、快捷、高效、清晰、透明,它完全可以克服以上所述的不足之处。这将给项目查询和管理带来很大的方便,从而给物业管理工作带来更高的效率,这也是物业管理正规化、现代化的重要标志。
因此,开发一套高效率、无差错的小区物业管理系统软件十分必要。本系统的主要目的是告别帐本,安全、快捷的保存数据信息。由于小区物业管理涉及到费用问题,为了增强系统的保密性,使业主利益不受损害,使业主能够对自家的物业费用和投诉等情况提供透明化、直观的了解。关键词:,sqlserver,C#,小区物业
AbstractAs
for
the
plot
estate
management
that,
its
work
flow
numerous
and
diverse,
the
diversification,
the
management
complex,
capture
the
expense
and
the
maintenance
of
equipment
is
tedious.
The
computer
could
definitely
be
competent
the
estate
management
work,
moreover
more
accurate,
convenient,
quick,
highly
effective,
clear,
is
transparent
above,
it
definitely
may
overcome
the
deficiency
which
states.
This
will
give
the
project
inquiry
and
the
management
brings
very
big
convenient,
thus
will
bring
a
higher
efficiency
for
the
estate
management
work,
this
also
will
be
the
estate
management
standardization,
the
modernized
important
symbol.
Therefore,
develops
set
of
high
efficiency,
the
non-
mistake
plot
estate
management
system
softwares
is
extremely
essential.
This
system
main
goal
is
says
goodbye
to
the
account
book,
the
security,
the
quick
preservation
data
message.
Because
the
plot
estate
management
involves
to
the
expense
question,
in
order
to
strengthen
the
system
the
secrecy,
causes
the
owner
benefit
not
to
receive
harms,
enables
the
owner
to
situation
and
so
on
oneself
property
expense
and
suit
provides,
the
direct-viewing
understanding.Keywords:,sqlserver,C#
目录TOC\o"1-3"\h\u第一章绪论 ①Jump:在每一帧的update()方法中检测是否有点击事件触发。有,则触发Jump;没有继续奔跑动画。而Jump则是通过cocos2dx中的Box2d,赋予物体向上的速度实现。②Share:Share的功能是通过ShareSDK的集成实现,只需要将ShareSDK集成至游戏中,并在游戏结束时实例调用即可。③计时:计时相对简单,只需要一直获得每一帧的系统时间,并同时计算差值的和并可以得到游戏时间。
第五章系统实现5.1开始场景开始场景是玩家进入游戏的地方:Scene*gameBegin::createWelcome(){ autobeginScene=Scene::create(); autowelcomeLayer=foreGround::create(); autobackLayer=backGround::create(Color4B(255,255,255,255));/*因为背景只设置了颜色,就没有单独初始化*/ autoplayLayer=playGround::create(); beginScene->addChild(welcomeLayer,50); beginScene->addChild(backLayer,-20); beginScene->addChild(playLayer,0); returnbeginScene;}//用于创建场景boolforeGround::init(){if(!Layer::init()){returnfalse;} SizescrSize=Director::sharedDirector()->getWinSize();SizevisibleSize=Director::getInstance()->getVisibleSize();Vec2origin=Director::getInstance()->getVisibleOrigin();autocloseItem=MenuItemImage::create("blackblade/my_Scene/Close_Down.png","blackblade/my_Scene/Close_Select.png", CC_CALLBACK_1(foreGround::menuCloseCallback,this)); closeItem->setPosition(Vec2(origin.x+visibleSize.width-closeItem->getContentSize().width/2,origin.y+visibleSize.height-closeItem->getContentSize().height/2)); autobeginLabel=Label::createWithSystemFont("StartGame","Altas",34); beginLabel->setTextColor(Color4B(0,0,0,255)); autobeginItem=MenuItemLabel::create(beginLabel,CC_CALLBACK_1(foreGround::menuBeginCallback,this)); beginItem->setPosition(Vec2(origin.x+visibleSize.width*3.0/4.0,origin.y+visibleSize.height*0.5)); automenu=Menu::create(closeItem,beginItem,NULL);menu->setPosition(Vec2::ZERO);this->addChild(menu,1); log("addLayer:foreGroundSuccessly");returntrue;}//foregroundLayer的初始化boolplayGround::init(){ if(!Layer::init()) { returnfalse; } log("AddLayer:playGroundsuccessly!"); SizescrSize=Director::sharedDirector()->getWinSize(); SizevisibleSize=Director::getInstance()->getVisibleSize(); Vec2origin=Director::getInstance()->getVisibleOrigin(); Sprite*animationRun=runSprite::getRun(); animationRun->setAnchorPoint(Vec2(0,1)); SizegetRunSpSize=animationRun->getContentSize(); log("animationSpritewidth:%f,animationSpriteheigh:%f",getRunSpSize.width,getRunSpSize.height); animationRun->setPosition(Vec2(origin.x+getRunSpSize.width,origin.y+getRunSpSize.height));/* autospriteTest=Sprite::create("blackblade/Running/man_move1.png"); spriteTest->setPosition(origin.x+visibleSize.width/2,origin.y+visibleSize.height/2); this->addChild(spriteTest);*/ this->addChild(animationRun); returntrue;}//playgroundLayer的初始化三个场景的基本设置一样故不一一赘述。5.2进行场景GameControl*GameControl::create(Layer*layer,floatpositionY){ autoinitCon=newGameControl(); initCon->init(layer,positionY); initCon->autorelease(); returninitCon;}boolGameControl::init(Layer*layer,floatpositionY){ m_layer=layer; m_positionY=positionY; m_visibleSize=Director::getInstance()->getVisibleSize(); //addedge autoedge=Edge::create(); edge->setPosition(m_visibleSize.width/2,m_visibleSize.height/2+positionY); layer->addChild(edge); //addground autoground=Sprite::create(); ground->setColor(Color3B(0,0,0)); ground->setTextureRect(Rect(0,0,m_visibleSize.width,6)); ground->setPositionY(3+positionY); layer->addChild(ground); //addfireman autofireman=Fireman::create(); fireman->setPosition(50,fireman->getContentSize().height/2+positionY); layer->addChild(fireman); returntrue;}//进行时场景voidGameControl::OnUpdate(floatdt){ currectIndex++; if(currectIndex>=nextIndex) { reset(); addBlock(); }}//每一帧中调用障碍生成并设置下一个障碍物的出现距离voidGameControl::reset(){ currectIndex=0; nextIndex=(rand()%120)+60;}//设置障碍物的生成间隔voidGameControl::addBlock(){ autoblock=Block::create(); m_layer->addChild(block); block->setPositionY(block->getContentSize().height/2+m_positionY);}//添加障碍物//以上为游戏控制器调用,控制游戏中跑步角色的生成以及障碍物的生成5.3结束游戏结束游戏分为了两个连续的部分,首先是碰撞检测:voidGameScene::detectionCrash(){CCArray*bulletsToDelete=CCArray::create();bulletsToDelete->retain(); CCObject*bt,*et;CCArray*enemyToDelete=CCArray::create();enemyToDelete->retain();CCRectrectHero=this->heroLayer->getHero()->boundingBox();floatx=rectHero.origin.x+rectHero.size.width*0.3;floaty=rectHero.origin.y+rectHero.size.height*0.4;floatwidth=rectHero.size.width*0.3;floatheight=rectHero.size.height*0.6;CCRectrect_HeroForCrash=CCRectMake(x,y,width,height);//检测CCARRAY_FOREACH(this->enemyLayer->m_enemys,et){//break;Enemy*enemy=(Enemy*)et;if(enemy->getLife()==0){break;}//CCPointrect1=this->heroLayer->getHero()->getPosition();if(enemy->boundingBox().intersectsRect(rect_HeroForCrash)){this->heroLayer->setIsHeroLive(false);this->heroLayer->setHeroLifes(this->heroLayer->getHeroLifes()-1);enemyLayer->stopTakeEnemy();enemyLayer->bomb(enemy);enemyLayer->removeAllEnmeys();SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();inttempHightScore=GameScene::getHightestScore();if(this->m_totalScore>tempHightScore){GameScene::saveHightestScore(this->m_totalScore);}charlife[64];sprintf(life,"%d",this->heroLayer->getHeroLifes());CCLabelTTF*lbLife=(CCLabelTTF*)this->getChildByTag(tagOfLife);lbLife->setString(life);this->heroLayer->heroBomb(0.1f);if(this->heroLayer->getHeroLifes()==0){this->scheduleOnce(schedule_selector(GameScene::gameOverCallback),2.0f);}else{this->scheduleOnce(schedule_selector(GameScene::newLife),2.0f);}return;}}CCARRAY_FOREACH(this->heroLayer->getBullets()->m_bullets,bt){CCSprite*bullet=(CCSprite*)bt;CCARRAY_FOREACH(this->enemyLayer->m_enemys,et){Enemy*enemy3=(Enemy*)et;if(enemy3->boundingBox().intersectsRect(bullet->boundingBox())){if(enemy3->getLife()>1){enemy3->loseLife();bulletsToDelete->addObject(bullet);}elseif(enemy3->getLife()==1){enemy3->loseLife();bulletsToDelete->addObject(bullet);enemyToDelete->addObject(enemy3);this->m_totalScore+=enemy3->getScore();charstr1[20];sprintf(str1,"%d",(int)this->m_totalScore);CCLabelTTF*label1=(CCLabelTTF*)this->getChildByTag(tagOfScore);label1->setString(str1);}}}}//检测是否相撞在完成了得到检测之后,回调gameover,并创建gameover场景boolGameOver::init(){ LayerColor::create(); initWithColor(Color4B::WHITE); autooverLabel=Label::create(); overLabel->setString("GameOver!"); overLabel->setSystemFontSize(60); overLabel->setTextColor(Color4B::BLACK); this->addChild(overLabel); returntrue;}Scene*GameOver::createScene(){ autoOverscene=Scene::create(); autoOverlayer=GameOver::create(); Overscene->addChild(Overlayer); returnOverscene;}5.3Jump的实现voidGameCtrl::onUserTouch(){ hero->getPhysicsBody()->setVelocity(Vec2(0,400));}将火柴人做个刚体,赋予一个向上的速度即可实现jump.5.4随机障碍的实现以及销毁boolBlock::init(){ Sprite::init(); SizewinSize=Director::getInstance()->getVisibleSize(); setPositionX(winSize.width); setColor(Color3B(0,0,0)); Sizesize=Size((rand()%20)+5,(rand()%30)+10); setContentSize(size); setTextureRect(Rect(0,0,size.width,size.height)); setPhysicsBody(PhysicsBody::createBox(size)); getPhysicsBody()->setDynamic(false); getPhysicsBody()->setContactTestBitmask(1); scheduleUpdate(); returntrue;}//黑色障碍的随机生成voidBlock::update(floattime){ this->setPositionX(getPositionX()-5); if(getPositionX()<0) { unscheduleUpdate(); removeFromParent(); }}//障碍物的销毁
总结这次毕业设计,是对我三年所学知识的重新温习,我认识到了自身有很多不足。这次毕业设计的难点在游戏框架设计以
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【天水】2025年甘肃天水师范学院考核招聘高层次人才52人(第二期)笔试历年典型考题及考点剖析附带答案详解
- 【哈尔滨】2025年黑龙江哈尔滨市阿城区教育系统所属事业单位招聘高层次人才32名笔试历年典型考题及考点剖析附带答案详解
- 折蘑菇教学课件
- 图文处理教学课件
- 文库发布:儿童肺炎
- 变阻器参赛教学课件
- 整体护理病历课件
- 时政热点的多角度分析
- 中文在机场教学课件
- 【襄阳】2025年湖北襄阳宜城市引进事业单位急需紧缺人才50人笔试历年典型考题及考点剖析附带答案详解
- 电磁兼容中抗扰度试验教学课件
- 中国邮政储蓄银行理财考试真题模拟汇编(共719题)
- 医务科岗前培训
- 市政雨污水管道清污清淤工程地下有限空间作业专项方案2020年10月10
- GB/T 8685-2008纺织品维护标签规范符号法
- 医疗器械行业市场部人员岗位职责
- 旅行社导游带团操作流程
- 部编版小学道德与法治三年级下册期末质量检测试卷【含答案】5套
- 怎样当好一名师长
- DB21T 3354-2020 辽宁省绿色建筑设计标准
- (完整版)重大危险源清单及辨识表
评论
0/150
提交评论