(100分)策划 俄罗斯方块 完整的游戏过程 (可以的话还加50分,谢谢)
网上下载的CSDN里面的代码^^^ 分享………… 我用TC调试成功了 因为头文件里有 所以不能在VC中运行 #include #include #include /*这里须要读取系统运行时间来作为定时器*/ #include /*很不幸,TC2的简单图形,让我放弃了用*/ #include /*win32+openGL来讲解.*/ #define MAX_X 14 /*可见最大X*/ #define MAX_Y 21 /*可见最大Y*/ /*我们定义了最大的可见X和Y,那么即还有不 可见的部分,事实上地图(大盒子)里的左右 两侧和底部各两行都被1填充,这样大大简化 出界的判断,事实上,在本例中没有这样的 代码,因为旁边有一圈1阻止小盒子越出大 盒子的按制范围 */ #define MAX_C 7 /*最大种类,这个无须解释*/ #define KEY_UP 'w' /*定义上下左右按按键*/ #define KEY_DOWN 's' #define KEY_LEFT 'a' #define KEY_RIGHT 'd' #define KEY_ESC 27 /*退出*/ typedef int BOOL; #define FALSE 0 #define TRUE 1 /*这几个TC中没有...自己定义一下吧:)*/ /*时钟结构*/ typedef struct { /*时钟结构*/ BOOL enabled; /*时钟是否开启*/ unsigned int intervel; /*定时间隔*/ unsigned int lasttime; /*这个属于内部使用变量*/ } Timer; /* *现在进入了编程的初质阶段 *在开始处我会写出所有的函数原形,以及它们的作用 *main函数在程序的最后,你可以在这里看到整个游戏的组织架构 *很好,它只有几十行,并且非常容易理解,当然,还是先看一下函数原形 *及解释 */ /******************************************************\ * 函数原形及说明 * \******************************************************/ /*以下三个函数可以参照Timer结构体.在函数声明后面*/ int GetTickCount(); /*返回电脑或操作系统运行逝去的时间*/ /*在win32环境下已包含在windows.h里边,返回的是4byte*/ /*在DOS(本代码)环境下,要自己编写,使用到BIOS.h内容*/ int setTimer(Timer *t, unsigned int intv, BOOL en); /*设置时钟t,参数分别为时钟指针,时间间隔,是否活动*/ /*时间间隔,win32下为毫秒,DOS下为1/18秒(有点低)*/ BOOL testTimer(Timer *t); /*测试时钟t是否到达定时时间*/ /*如下面这段代码:*/ /* setTimer(&t;, 1, 1); 设置1个单位的间隔 while(1) { if(testTimer(&t;)) printf("Active!\n"); } 将会定时(1个单位)在屏幕上打印Active! 一般来说testTimer必须放在循环中反复执行,激活时返回1 */ void render(void); /*唯一的绘图函数*/ /*注意,此函数重画整个地图,根据地图中的点阵,以及根据 小盒在地图的中坐标在恰当位置画出小盒子*/ /*DOS的图形当然是很低的,但,全屏绘图在这里还是过得去 的,我用的是双缓冲,交换绘图,这样感觉好点*/ void initMap(void); /*初始化地图(大盒子)*/ /*之前提到过在这个两维数组中有一圈为1的东西来阻止 小盒子出界,这就是生成这一圈的函数*/ void newGame(); /*新建一个游戏*/ /*这个函数初始化一几个时钟和建造第一个下落的小盒子*/ /*当然建造完后要生成一个个的预览*/ void rotateBox(int box1[5][5], int box2[5][5]); /*核心函数成员,把box1逆时针旋转90度,并保存到box2中*/ void rebuidNext(); /*核心函数成员,生成下一个方块*/ int drop(); /*核心函数成员,将下落的盒子向下移(实际上增加下落盒 子的Y值而已,当然要判断是否与地图点阵重叠*/ /*与地图重叠,无法完成下落操作,返回0*/ void putBox(); /*在这之上,下落的盒子与地图之前是独立的两个两维数*/ /*当下落失败后,小盒子要回到顶端再次重新执行下落,这*/ /*时原来的盒子内容当然就要变成地图上的内容了,putBox 就是将下落盒子的内容根据XY写到地图上*/ void clear(); /*这个函数在下落失败并putBox后执行,扫描整个地图*/ /*清除掉满行的点阵,具体细节在函数内讲*/ int move(int dir); /*左右移动下落盒子,dir指出向左还是向右,这个与drop 是一样的*/ int test(int mx, int my, int box[5][5]); /*这个比较重点,判断box在mx,my为坐标上,与地图上的 非空点阵是否有重叠.很通用的一个函数*/ int rotate(); /*旋转下落的盒子,当然如果转了之后与地图有冲突,会 取消转动,返回0,但返回的值好像没什么用~*/ int newfall(); /*创建下落元素,把"下一个"预览的内容复制到下落盒子*/ /*并将下落的盒子移动到地图顶部,当然这个过程,如果顶 部有冲突,会返回0,这时说明已经满了...gameOver*/ /******************************************************\ * 变量区 * \******************************************************/ /*在上面的说明中,可能会有一些蒙,因为可能对所用到的实际变量没 *有了解 */ int map[MAX_Y+4][MAX_X+4]; /*地图\大盒子...MAX_X,Y是可见面积*/ /*我已说过需要在外面布两圈"卫兵"*/ int curbox[5][5]; /*当前下落的盒子*/ int curx, cury; /*保存着当前活动盒子在地图上的位置*/ int nextbox[5][5]; /*保存着下一个形状的盒子*/ /*以上就是这么几个盒子和坐标了*/ /*这里列出了标准七种俄罗斯方块图形点阵,用到时它们会被复制到相*/ /*应的盒子...:)*/ int box[MAX_C][5][5] = { /*MAX_C(7)种预定义的盒子*/ { {0,0,0,0,0}, {0,0,0,0,0}, {1,1,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,0,0}, {0,1,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,1,1,0,0}, {0,0,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,1,0}, {0,1,1,0,0}, {0,0,0,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,1,1,0,0}, {0,0,1,0,0}, {0,0,1,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,1,0}, {0,0,1,0,0}, {0,0,1,0,0}, {0,0,0,0,0} }, { {0,0,0,0,0}, {0,0,1,1,0}, {0,0,1,1,0}, {0,0,0,0,0}, {0,0,0,0,0} } }; /******************************************************\ * 时钟 * \******************************************************/ /*时钟部分也非常理解的,一个用到设置时钟,一个用来测试时钟激活态*/ Timer tDown; /*正常下落定时时钟intervel会比较大*/ Timer tFast; /*按KEY_DOWN时使用的快速下落*/ int speed = 13; /*控制下落时间间隔*/ #define FAST_INTV 1 /*快时钟的间隔*/ /******************************************************\ * 时钟 * \******************************************************/ /*时钟部分也非常理解的,一个用到设置时钟,一个用来测试时钟激活态*/ Timer tDown; /*正常下落定时时钟intervel会比较大*/ Timer tFast; /*按KEY_DOWN时使用的快速下落*/ #define FAST_INTV 1 /*快时钟的间隔*/ int GetTickCount() { /*读取BIOS时钟*/ int ret; ret = peek(0x0,0x46e); /*实际上读取了内存0:046e处的内容*/ ret <<= 8; /*这个地方是$%#$^$%&^*/ ret += peek(0x0,0x46c); /*太多新的东西了,找点书看一看吧*/ return (ret); } int setTimer(Timer *t, unsigned int intv, BOOL en) { t -> enabled = en; /*设置一个时钟罗*/ t -> intervel = intv; t -> lasttime = GetTickCount(); /*lasttime记录的是上一个*/ /*tickcount返回的东西*/ /*这样当再一次测试时间时新的tickcount产生了 它来减去上一次的tickcount就得出了一个时间 间隔,这个就可以和intervel比较从而得出是否 激活了 */ return 0; } BOOL testTimer(Timer *t) { /*在上面6行的地方解释了:)*/ unsigned int tmp, dt; if (!(t -> enabled)) return FALSE; tmp = GetTickCount(); dt = tmp - (t -> lasttime); if(dt >= t -> intervel) { t -> lasttime = tmp; return TRUE; } return FALSE; } /******************************************************\ * 渲染部分 * \******************************************************/ /*提供render更新整个屏幕*/ /*关于这个函数,要说的东西还是比较多,为了追求漂亮和编译*/ /*时的灵活性,这个函数被写得颇为冗长...*/ /*现在写一下本游戏图形的东西...使用TC2的Graphics我也不 太乐意,毕竟它本身已过时,但鉴于实在简单实用,它用来教学 再合适不过,这也是教学总是用TC的原因,老师们不喜欢让学 生问一些让他们掌握起来也困难的东西...*/ /*这里我使用了VGAMED模式,而不是 VGAHI,因为VGAMED有两个 页(可以想像成缓冲),这样可以用来做到不闪动画.即:在后台 页绘制图形,完成后再显示出来. 这里用到了两个函数: setactivepage(1 | 0) 参数只能是1或0,选择绘图页,例如选 择了1后,以后所有的绘图动作将画到页1上. setvisualpage(1 | 0) 这个叫做选择可见页,即选择在屏幕上 显示页面1还是0 */ void render(void) { int x, y; static int cPage = 0; /*当前页,换页用*/ #define STARTX 50 /*定义几个常量*/ #define STARTY 0 #define LEN 18 setactivepage(cPage=(cPage == 0?1:0)); /*选择页*/ cleardevice(); /*清屏*/ setcolor(15); rectangle( STARTX + LEN * 2 - 2, STARTY + LEN * 3 - 2, STARTX + LEN * (MAX_X - 2) + 2, STARTY + LEN * (MAX_Y - 2) + 2); /*用白色画一个外框*/ setfillstyle(SOLID_FILL, 5); for(y = 3; y < MAX_Y - 2; y++) { /*画地图 */ for(x = 2; x < MAX_X - 2; x++) { if(map[y][x]) { rectangle( x * LEN + STARTX, y * LEN + STARTY, x * LEN + STARTX + LEN, y * LEN + STARTY + LEN); bar( x * LEN + STARTX + 1, y * LEN + STARTY + 1, x * LEN + STARTX + LEN - 2, y * LEN + STARTY + LEN - 2); } } } /*绘图操作就不要作太复杂的介绍了,这只写作用*/ /*以上段,根据地图上的点阵情况将地图反映到屏幕上*/ for(y = 0; y < 5; y++) { /*画下落物*/ for(x = 0; x < 5; x++) { if(curbox[y][x]) { if(y + cury > 2) { rectangle( (x + curx) * LEN + STARTX, (y + cury) * LEN + STARTY, (x + curx) * LEN + STARTX + LEN, (y + cury) * LEN + STARTY + LEN); bar( (x + curx) * LEN + STARTX + 1, (y + cury) * LEN + STARTY + 1, (x + curx) * LEN + STARTX + LEN - 2, (y + cury) * LEN + STARTY + LEN - 2); } } } } /*以上将下落的盒子按昭它在地图上的坐标,画到对应的区域里*/ for(y = 0; y < 5; y++) { /*画下一个*/ for(x = 0; x < 5; x++) { if(nextbox[y][x]) { rectangle( x * LEN + 320, y * LEN + 10, x * LEN + 338, y * LEN + 28); bar( x * LEN + 321, y * LEN + 11, x * LEN + 336, y * LEN + 26); } } } /*这个画出下一个盒子的预览*/ setvisualpage(cPage); /*确认在cPage页里画好了*/ /*将它显示出来*/ } /******************************************************\ * 初始化部分 * \******************************************************/ /*提供newGame()初始化新游戏*/ void initMap(void) { /*初始化地图*/ int x, y; /*我们须要一圈卫兵...*/ for(y = 0; y < MAX_Y; y++) { for(x = 0; x < MAX_X; x++) { if(x < 2 || x > MAX_X - 3 || y > MAX_Y - 3) map[y][x] = 1; else map[y][x] = 0; } } /*这里初始化出这个形状*/ } /*当然是无盖的...*/ void newGame() { /*新建游戏*/ int x, y; initMap(); /*初始化地图*/ srand(GetTickCount()); /*初始化随机发生器*/ rebuidNext(); /*建立下一个*/ setTimer(&tDown;, speed, 1); /*启动时钟(快慢两个)*/ setTimer(&tFast;, FAST_INTV, 1); newfall(); /*对下落的盒子操作一下*/ /*这样第一个下落的方块 就在地图顶部准备好了*/ } /******************************************************\ * 核心函数 * \******************************************************/ void rotateBox(int box1[5][5], int box2[5][5]) { /*旋转box1输出到box2*/ int x, y; for(x = 0; x < 5; x++) /*这个函数可以须要实际*/ for(y = 4; y >= 0; y--) /*编写一下才能印像深刻*/ box2[y][x] = box1[x][4 - y]; } void rebuidNext() { /*新建下一个形状并放到nextbox中*/ int i, x, y; i = random(MAX_C); /*从几种方块里面选一种*/ for(y = 0; y < 5; y++) /*并复制过来*/ for(x = 0; x < 5; x++) nextbox[y][x] = box[i][y][x]; /*复制*/ } int drop() { /*下落,返回成功与否*/ int newy; /*盒子要下落的新位置*/ newy = cury + 1; /*为当前Y位置+1*/ if(test(curx, newy, curbox)) { cury = newy; /*测试下落盒在这个位置*/ return 1; /*上是否有冲突,没有的话*/ } /*直接设置cury*/ return 0; } void putBox() { /*将curbox填充到地图上*/ int x, y; for(y = 0; y < 5; y++) /*这个也简单,主要是要根*/ for(x = 0; x < 5; x++) /*据curx,cury指出位置 */ if(curbox[y][x]) map[y + cury][x + curx] = curbox[y][x]; } void clear() { /*清除掉满行*/ /*这个函数实际上效率也很低的,为了简便 它从头到尾作了测试*/ /*具体的算法为: 从第0行开始到最后一行,测试地图点阵是否为满,如果是的话 从当前行算起,之上的地图向下掉一行*/ int x, y; int dx, dy; int fullflag; for(y = 0; y < MAX_Y - 2; y++) { /*最后两行保留行*/ fullflag = 1; /*假设为满*/ for(x = 2; x < MAX_X - 2; x++) { /*保留列~*/ if(!map[y][x]) { fullflag = 0; break; } } if(fullflag) { /*向下移动一行*/ for(dy = y; dy > 0; dy--) for(dx = 2; dx < MAX_X - 2; dx++) map[dy][dx] = map[dy - 1][dx]; for(dx = 2; dx < MAX_X - 2; dx++) map[0][dx] = 0; /*并清除掉第一行*/ } } } int move(int dir) { /*返回成功与否*/ int newx; if(dir) newx = curx + 1; /*与drop一样,准备移动后的坐标*/ else newx = curx - 1; if(test(newx, cury, curbox)) { /*测试是否冲突*/ curx = newx; /*可以的话切换curx*/ return 1; } return 0; } int test(int mx, int my, int box[5][5]) { /*测试box在map里mx,my位置上是否能着陆*/ /*这个是最关键的一个函数,它判断是否产生非空冲突*/ /*但算法还是很简单的*/ int x, y; for(y = 0; y < 5; y++) for(x = 0; x < 5; x++) if(map[y + my][x + mx] && box[y][x]) return 0; return 1; } int rotate() { int x, y; int newbox[5][5]; /*我们必须将当前盒子转动到新的盒子*/ /*再对这个新的盒子的冲突作测试*/ rotateBox(curbox, newbox); /*转动到新的盒子*/ if(test(curx, cury, newbox)) { /*并且新的盒子能放到地图上而不冲突*/ for(y = 0; y < 5; y++) for(x = 0; x < 5; x++) curbox[y][x] = newbox[y][x]; /*复制进来*/ return 1; } else return 0; } int newfall() { /*创建下落元素失败返回0*/ int x, y; curx = MAX_X / 2 - 2; /*重新指定小盒位置*/ cury = 0; for(y = 0; y < 5; y++) for(x = 0; x < 5; x++) curbox[y][x] = nextbox[y][x];/*将nextBox复制过来*/ rebuidNext(); /*重建nextBox*/ return test(curx, cury, curbox); } /************************************************************\ * 主函数 -- 整个游戏架构 * \************************************************************/ int main() { char key; /*记录当前按键*/ int i; int gd = VGA, gm = VGAMED; /*初始化的图形模式*/ Timer *ptDown; /*下落所指向的时钟(有快慢)*/ Timer trender; /*为了避免渲染给程序造成过大的负担*/ /*用一个时钟来控制渲染速度*/ /*把它设置interval = 1,*/ /*这样就是18 FPS了,当然无法达到标*/ /*准的60 FPS...毕竟这是DOS...*/ setTimer(&trender;, 1, 1); initgraph(&gd;, &gm;, ""); /*初始化图形*/ newGame(); /*新游戏...*/ while(1) { /*主游戏循环*/ if(kbhit()) { /*如果键盘有按下*/ key = getch(); /*读取一个按键值到key*/ } else key = 0; switch(key) { /*对读到的key进行判断*/ case KEY_UP: rotate(); /*上,旋转下落盒子*/ break; case KEY_DOWN: ptDown = &tFast; /*使用tFast时钟 */ break; case KEY_LEFT: move(0); /*左移*/ break; case KEY_RIGHT: move(1); /*右移*/ break; case KEY_ESC: closegraph(); /*结束游戏*/ exit(0); default: ptDown = &tDown; /*使用原来速度 */ } if(testTimer(ptDown)) { /*在上面已设置了下落要 使用的时钟在ptDown里*/ if(!drop()) { /*下落,失败返回0*/ putBox(); /*写到地图里*/ clear(); /*清除满行*/ if(!newfall()) { /*新建下落,失败则游戏结束*/ closegraph(); exit(0); } } } if(testTimer(&trender;)) /*最后...渲染...*/ render(); } }
可以提供国外优秀团队的演出项目吗?
演奏:维也纳爱乐乐团1、《祝你健康》进行曲 2、《不安鬼魂》圆舞曲 3、《小磨坊》波尔卡 4、《小精灵的舞蹈》 5、《谵妄》圆舞曲 6、《入口》加洛普 7、《护林员》轻歌剧序曲 8、《安锐》波尔卡 9、《柠檬树开花的地方》圆舞曲 10、《畅通无阻》快速波尔卡 11、《城市和乡村》波尔卡—玛祖卡 12、《水手》波尔卡 13、《动力》圆舞曲 14、《威尼斯狂欢节的梦幻回忆》 15、《激情》加洛普 16、《舞步轻盈》快速波尔卡 17、《蓝色多瑙河》圆舞曲 18、《拉德斯基》进行曲
小酒吧2016跨年夜活动方案
酒吧2016跨年夜活动策划书(一) 1为了迎合市民们追求新鲜、时尚的心理,在节日营造气氛,提高经营能力和经营水平,创造独特的开元文化,进一步打响华天紫金阁大酒店的品牌,提高知名度,使酒店更加深入人心,在华天同行酒店中取得竞争优势。
2.通过晚会的促销功主能争取尽可能丰厚的赢利。
活动的主要内容是:元旦自助大餐、元旦文艺晚会,活动的地点是本酒吧的四季厅、开元厅。
时间安排在12月31晚上。
1.布置特色:地点放在原太平洋的大堂(现在大堂一部分已改为“不见不散”快餐厅)。
圣诞节用大量的泡沫雕、面雕等装饰分别搭配,突出圣诞节的浓厚气氛,场地的一个优势在于装饰、布置面对着一大面玻璃,外面来来往往的市民都能看到里面的情况,非常吸引人。
2.经营情况:当时的跨年自助餐的价位是98元/人,准备了420张门票,但是由于参加的人很多,在售完所有的票后又加印了一部分,所以参加的人是非常多的,活动的人气也很旺。
3.具体活动 (1)安排了一场小型演出,渲染节日的气氛,演出的档次不高,但是非常具有吸引力,也增添了活动的互动性。
(2)安排了抽奖活动,奖品有自行车等。
总的来说,太平洋2000年的圣诞自助活动是非常成功的,既很好地宣传了酒店,也因此提高了酒店的经营水平,使华天市民对太平洋这个首家举行较大规模圣诞活动的酒店有了进—步的认识和肯定。
活动设在酒店二楼开元厅,是一个具有使用面积400平方米的多功能大厅。
宴会式接待能力400人左右。
根据过去同类活动方案与收效,结合本次需求调查与举办能力分析,可初步选定活动方案为:面向管理阶层、个体老板及欣赏愿望较强烈的工薪阶层;提高晚会水平与档次,加强媒体广告宣传,选择支持率高的压台演员,抽奖活动奖品为摩托车,门票价格为398元含促销费18元)。
具体框架方案与费用预算为: (1)晚会整体安排 ①晚会地点:二楼开元厅。
②演出时间:2015年12月31日19:00进场,20:00演出正式开演,演出时间总计3个小时。
③演出主要阵容:(计划于11月16日之前完成选定主要明星、嘉宾、主持及主要歌手,选择对象为俄罗斯皇家舞蹈团、魔术大师一名、北京红色激情演唱组、内蒙古红星阿布格日图、著名笑星巩汉林、金珠等。
) ④门票价格:398元,1.2米以下半票(其中包含促销费18元)。
⑤门票设计及相关的宣传资料设计,于11月12日主要明星选定后开始,并办理演出手续,11月16日宣传资料定稿,并于11月25日完成门票印刷(liuxue86.com),12月10日开始在大堂售票。
同时选定刊登报刊的时间,由公关部协助安排,并利用电视台电视字幕连续做广告。
⑥现场布置: a.t字型舞台搭建,灯光需提前租赁调试,舞台背景及开元厅四周突出圣诞节的氛围。
最后一排安排追光灯位。
舞台搭建及灯光于12月20日开始,12月22日完成调试排座位,请工程部协助搭建增高台,计划于22日晚上完成。
b.座位按影院式排列,初步估计可以排400~450个座位(排满可达500个),座位于23日排定,完成场地内的全部布置。
c.进门处设置出票台和检票台,进门口需请保安部协助检票,由圣诞老人分发礼物。
进门处要有明显的严禁吸烟标志。
酒店大堂内摆放演出当天演员的剧照。
d.场内需请保安在每一个出入口安排员工值勤,并需请公安协助维持秩序。
(2)费用预算 ①演出费:主要明星:65000元 其他演员:10000元(其中包括灯光音响费用) 合计:75000元 ②广告及印刷品制作费:5000元(与餐饮同步制作) ③奖品设置: 一等奖一名,奖摩托车一辆(5000元) 二等奖二名,各奖1088元标准的酒店年夜饭一桌(2176元) 三等奖三名,各奖价值580元ktv包厢一间(1740元) 幸运奖十名,各奖酒店周末海鲜自助餐券一张(680元) 另每位宾客赠送礼品一份共500元 奖品合计:10096元(其中主办方支付5500元,其余奖品由赞助方提供) ④演员演出当天的食宿安排费用:1000元 ⑤主要明星及嘉宾路费支出:3000元 ⑥不可预计支出:5000元 费用总计:94500元 (3)收入预算 收入:400张x 380元门长=153000元 利润:152000元一94500元=57500元(如赞助费谈成,利润可达82500元 (4)圣诞节其他康乐活动安排 12月24日、25日,所有ktv包厢一律以最低消费标准计费,包厢最低消费不打折。
另包厢消费赠送红酒一瓶、小吃一份(预计每一个包厢赠送成本在40元左右)。
预计当天ktv收入将达到10000元以上。
小酒吧2016跨年夜活动方案策划书 一、元旦晚会活动方案设计 以空灵美妙的音乐、激情四溢的演出、醇香的美酒、优惠的价格,真诚的服务,独特的风格,制造多姿多彩,欢乐难忘的浓情之夜…… 1、元旦化装舞会 新年晚会,化装舞会,个性装扮,另类造型,欢聚迎新之夜。
2、乐队表演 摇滚、英伦风格演奏,烘托舞会或激情热烈,或轻快欢乐的气氛。
3、欢乐演艺 邀请知名演艺者、新秀真情奉献,如果观众有某方面的才华,也可以展示给大家,将得到一份精美的新年礼物。
4、消费优惠 ·买XX送XX; ·当晚前X名顾客获赠礼品或得到相应优惠 5、幸运抽奖 穿插在晚会节目当中,活跃、调节新年欢乐气氛。
6、现场评选 晚会观众评选,如穿着最淑女、最绅士评选,最具尖叫分贝的男士、女士评选,最受欢迎男士、女士评选,舞会皇后等。
7、新年倒计时狂欢 倒计时10秒,聆听新年钟声,祈祷许愿,合唱新年歌,全场热烈狂欢!!! 广告宣传计划—— 摆脱单一的场内海报宣传、传单派送等成旧宣传方式 ,与网络等媒体配合。
1、网络广告 发布库铂酒吧2015元旦活动信息。
2、报刊媒体 市内主流报刊媒体(如南宁晚报)发布彩版平面广告,发行量大、读者群广泛、易于浏览、时效性强。
主题:狂欢圣诞节火辣派队和跨新年元旦(舞一夜===舞一年)狂欢派队 活动内容 酒吧将以优美的音乐、精彩的演出、醇香的美酒、优惠的价格,真诚的服务,热烈气氛,竭诚为客 人服务。
让每位客人过一个,欢乐难忘的美好节日, 1、所有客人可以免费参加听圣诞钟声 12:00整的钟声,为您带来好运,祝您快乐、健康、幸运!!! A、 幸运抽奖 每位客人都会得到一张抽奖券。
活动最后将举行抽奖。
一等奖1名:{免费}……(待定) 二等奖2名;{免费}……(待定) 三等奖3名:圣诞幸运。
。
(待定) 2、节目安排 A、平安夜 :为您奉上精美的圣诞系列,赠送有酒吧的礼物,举办热舞派对,幸运抽奖,并有圣诞老人助兴。
B。
安排嘉宾演出(3-4档)《待定》 场地布置 (一)场地布置 酒吧门口圣诞屋贴着各式的印有圣诞节的彩画、雪人(腾图)(圣诞老人)(礼品)通道处`雪花`场地内部挂些圣诞喜庆饰品“圣诞快乐”等字样。
门口摆着一个2.5米多的圣诞树,椰树上挂有七色的灯泡,晚上把灯打开。
(最好安排木工制作一个木房子) 1 、平安夜有一个“圣诞老人”在门口为迎接客人。
在营业中要不停的出没场内,发放礼品,酒吧内所有的服务员穿戴上圣诞老人的帽子。
,准备好抽奖箱还有在舞台上的圣诞饰物装饰` (二)人员安排 1, 经理:全面负责接待制定和落实经营项目,进行成本控制;进行行政领导,负责员工的配备使用和有关人员的管理。
向外界发布消息和信息,统筹广告宣传活动。
2,迎宾人员:负责具体承接预定接待服务, 4,收银员:负责每天的结算工作准确迅速,自觉遵守财务纪律和财务制度每日收入现金与帐面核对相符。
5,调酒师:进行花式调酒表演,,,,, 6,场地组长:督导本班组服务员,优质高效的完成任务,检查服务员的仪容仪表和服务区域的维护,保养,清洁工作。
7服务员:提供高效率和高质量的服务,服从领班的安排,按标准做好各项工作,尽量帮助客人解决各类问题,必要时,将客人的问题和投诉及时汇 报给领班解决。
8音响师:提供优质高效的音响服务,维护好音响设备,做好维修工作保证营业。
9采购员:根据酒吧计划分批购进原料及各种器材。
10电工及工程技术人员:做好设备电路的检测和维护。
11、舞台总兼DJ:演员若干:负责整个活动的节目表演及音乐。
12、从服务人员中抽出2名装做圣诞老人。
五 准备及宣传工作 1 制定促销菜单 (更换现在的酒水牌) 2 制定活动的节目表 (由舞台总兼安排) 六 广告宣传出。
1 电视广告 传播速度快、2 广播广告3 报纸广告(应考虑成本问题,该项由领导来定) 4 宣传品 pop*2广告喷绘(1,平按夜和圣诞节)(2,。
跨新年元旦) 七 时间安排 1 12月10号—12月20号为:宣传品 pop*2广告喷绘布置,原料采购、器材购买、演出联系、人员配备、圣诞节的场地布置安排