Skip to content

TenderGroup

xxr5566833 edited this page Dec 11, 2017 · 1 revision

tenderGroup

一个project对应一个招标会,由Tender来管理

properties:

Project project_

这个project

boolean flag_

你们公司是否报名

Company[] companyList_

参与的公司数组,一共有7个

cc.Node node

把Tender作为自己的node,便于事件的调用

Number initDay_

需要记下初始时间,这样才能在7天后再次触发事件

functions:

void init(project, companylist, initday)

根据这三个参数,初始化这个对象

void announce(project project,Company[] companylist)

发出事件 "ANNOUNCE",event.detail.project = project, event.detail.companylist = companylist,调用ui发出招标信息,主要包括这个project的信息,参与竞争的公司等等

void enroll()

set flag_

boolean canBid(nowday)

获得当前时间,根据initDay_ ,返回是否可以竞标

void tender()

竞标开始

获得预估金,然后随机每个公司的出价,然后获得每个公司的声誉,然后随机初始化 a b ,然后计算每个公司的评分,如果flag_,那么计算自己的评分,然后计算最后的赢家,如果是其他公司,那么提高这个公司的声誉,如果是自己那么,需要调用personControl的begin了,然后project里是不是也需要一个类型编码,用于判断在开发结束或者开发逾期后该调用哪个方法。。

然后所有参与的公司声誉提升

这中间可能穿插很多动画和ui。。

具体违约和完成的惩罚和奖励,不如写在personControl里,这里就不写了