亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? chanimy.y

?? Windows上的MUD客戶端程序
?? Y
字號:
%{
/*----------------------------------------------------------------------------

            .###.  ###     ###       ,#,          .###.    ,#######,
         ,####""   ###    .###     ,##'##,     ,####""   .##'    `##.
        ###        ###########    ,##' `##,   ###       ####      ####
        ###..      ###'    ###  ,###########, ####..    `###,    ,##'
          `######  ###     ###  `##'     `##'   `######   `########'


	Copyright 1995, Chaco Communications, Inc. All rights reserved.
	Unpublished -- Rights reserved under the copyright laws of the United
	States.  Use of a copyright notice is precautionary only and does no
	imply publication or disclosure.

	This software contains confidential information and trade secrets of
	Chaco Communications, Inc.  Use, disclosure, or reproduction is
	prohibited without the prior express written permission of Chaco
	Communications, Inc.

	RESTRICTED RIGHTS LEGEND

	Use, duplication, or disclosure by the Government is subject to
	restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in
	Technical Data and Computer Software clause at DFARS 252.227-7013.

	Chaco Communications, Inc.
	10164 Parkwood Drive, Suite 8, Cupertino, CA, 95014-1533

------------------------------------------------------------------------------

	Animation parser.

----------------------------------------------------------------------------*/

// $Header: /home/cvs/chaco/modules/client/msw/ChGraphx/ChAnimy.y,v 2.0 1995/05/11 00:12:21 coyote Exp $

#include "headers.h"
#include "ChAnim.h"
#include "ChGrMod.h"
#include "ChAniPrs.h"
#pragma warning( disable: 4068 )

/* redefine these values so they don't globally conflict -
   This is necessary for yacc. Can change when we go to bison.
 */

#define yyparse  	ChAnimParser::yyparse
#define yycvtok		ChAnimParser::yycvtok

// end of predefinitions
// ==================================================================
%}

%token	ANCHOR
%token	ANCHORLIST
%token	BACKGROUND
%token	CAST
%token	CASTID
%token	CMDARG
%token	COLUMNS 
%token	CURSOR
%token	FALSEVAL 
%token	FILE 
%token	FLOAT
%token	FORMAT 
%token	FRAMERATE 
%token	FRAMES
%token	FRAMEVAL
%token	GOTO
%token	HINT
%token	HOTCAST
%token	HOTRECT
%token	INT
%token	ISANIMATING 
%token	ISDRAGGABLE
%token	ISVISIBLE 
%token	MAZE
%token	NAME
%token	NODEID
%token	ROWS 
%token	SCENE
%token	SCRIPT 
%token	SCRIPTREF 
%token	SPRITE 
%token	STARTFRAME
%token	STOP 
%token	STRING
%token	TRUEVAL
 

%%

GraphicsFile : Scene
					{m_lResult = $1;} 
				| AnchorListNode 
					{m_lResult = $1;} 
				| CastMember 
					{m_lResult = $1;} 
				| CastScript
					{m_lResult = $1;} 

Scene : SCENE '{' SceneList '}'
	{ $$ = $3;}

SceneList : SceneList SceneNode
			| SceneNode
				{ $$ = $1; }

SceneNode : AnchorListNode | CastMember  | Background /* | Maze | CastScript  */

AnchorListNode : ANCHORLIST '{' Anchors '}'
	{ $$ = 0; }

Anchors : Anchors Anchor | Anchor

Anchor : ANCHOR '{' AnchorDecls '}'
	{ $$ = AddAnchor( (ChBindList *)($3) ); }

AnchorDecls : 	AnchorDecls AnchorDecl 
				{ $$ = AppendBindingList( (ChBindList *)($1), (ChAnimBindVal*)($2) ); }
				| AnchorDecl
				{ $$ = NewBindingList( (ChAnimBindVal*)($1) ); }

AnchorDecl : 
				AnchorIdentifier |
				AnchorRect |
				AnchorHint |
				AnchorCmdArg |
				AnchorCursor |
				AnchorHotCast |
				AnchorCast | 
				AnchorStartFrame /**/

AnchorIdentifier : NODEID INT	
	{ $$ = bind(NODEID, $2); }

AnchorRect : HOTRECT INT INT INT INT
	{ $$ = bind(HOTRECT, new CRect($2, $3, $4, $5)); }

AnchorHint : HINT STRING
	{ $$ = bind(HINT, (void *)($2)); }

AnchorCmdArg : CMDARG STRING 
	{ $$ = bind(CMDARG, (void *)($2)); }

AnchorCursor : CURSOR STRING 
	{ $$ = bind(CURSOR, (void *)($2)); }

AnchorHotCast : HOTCAST INT
	{ $$ = bind(HOTCAST, $2); }

AnchorCast : CASTID INT  
	{ $$ = bind(CAST, $2); }

AnchorStartFrame : STARTFRAME INT
	{ $$ = bind(STARTFRAME, $2); }

/* Background dib */
Background : BACKGROUND '{' BackgroundDecls '}'
	{ 
		$$ = 0;
		Background( (ChBindList *)($3) );
	}

BackgroundDecls	: BackgroundDecls  BackgroundDecl
				{ $$ = AppendBindingList( (ChBindList *)($1), (ChAnimBindVal*)($2) ); }
					| BackgroundDecl
				{ $$ = NewBindingList( (ChAnimBindVal*)($1) ); }

BackgroundDecl :  FileSpec

/* Cast member */

CastMember : CAST '{' CastDecls '}'
	{ 
		$$ = 0;
		AddCast( (ChBindList *)($3) );
	}

CastDecls :	CastDecls CastDecl 
				{ $$ = AppendBindingList( (ChBindList *)($1), (ChAnimBindVal*)($2) ); }
			| CastDecl
				{ $$ = NewBindingList( (ChAnimBindVal*)($1) ); }

CastDecl : 	NodeId
			| NodeName 
			| Sprite 
			| CastScript 
			/* |ScriptRef*/
			| IsVisible
			| IsAnimating
			| IsDraggable

NodeId : NODEID INT	
	{ $$ = bind(NODEID, $2); }

NodeName : NAME STRING
	{ $$ = bind(NAME, (void *)($2)); }

IsVisible 	:  ISVISIBLE BoolValue
	{ $$ = bind(ISVISIBLE, ($2)); }
  
IsAnimating	:  ISANIMATING  BoolValue
	{ $$ = bind(ISANIMATING, ($2)); }

IsDraggable	:  ISDRAGGABLE  BoolValue
	{ $$ = bind(ISDRAGGABLE, ($2)); }

BoolValue : TRUEVAL 
				{ $$ = 1; }
			| FALSEVAL
				{ $$ = 0; }

Sprite : SPRITE '{' SpriteDecls '}'
	{ 
		ChAnimParser * parser = ChAnimParser::GetParser();
		$$ = parser->bind(SPRITE, (void *)(parser->Sprite( (ChBindList *)($3) )));
	}

SpriteDecls	: 	SpriteDecls SpriteDecl 
				{ $$ = AppendBindingList( (ChBindList *)($1), (ChAnimBindVal*)($2) ); }
				| SpriteDecl		  
				{ $$ = NewBindingList( (ChAnimBindVal*)($1) ); }

SpriteDecl :  	NodeId 
				| NodeName 
				| FileSpec 
				| Rows 
				| Columns 

FileSpec : FILE STRING
	{ $$ = bind(FILE, (void *)($2)); }

Rows : ROWS INT
	{ $$ = bind(ROWS, $2); }

Columns : COLUMNS INT
	{ $$ = bind(COLUMNS, $2); }

/* Inline script - save for cast */
CastScript : SCRIPT '{' ScriptDecls '}'
	{ 
		$$ = bind(SCRIPT, (void *)(Script((ChBindList *)($3))));
	}
	| SCRIPT STRING
	{
		$$ = bind(SCRIPTREF, (void *)($2));
	}

ScriptDecls	: 	ScriptDecls ScriptDecl 
				{ $$ = AppendBindingList( (ChBindList *)($1), (ChAnimBindVal*)($2) ); }
				| ScriptDecl		  
				{ $$ = NewBindingList( (ChAnimBindVal*)($1) ); }
 
ScriptDecl : 	NodeId 
				| NodeName 
				| FrameRate
				| StartFrame
				| Frames

FrameRate :	FRAMERATE  INT
	{ $$ = bind(FRAMERATE, $2); }

StartFrame : STARTFRAME	INT
	{ $$ = bind(STARTFRAME, $2); }

Frames : FRAMES	'{' FrameDecls '}'
	{ 
		ChAnimParser * parser = ChAnimParser::GetParser();
		$$ = parser->bind(FRAMES, parser->Frames( (ChBindList *)($3) ));
	}

FrameDecls	: 	FrameDecls FrameDecl 
				{ $$ = AppendBindingList( (ChBindList *)($1), (ChAnimBindVal*)($2) ); }
				| FrameDecl		  
				{ $$ = NewBindingList( (ChAnimBindVal*)($1) ); }

FrameDecl :	FrameVal 
			| FrameStop
			| FrameGoto


FrameVal : INT INT INT INT INT INT
	{ $$ = bind(FRAMEVAL, new ChCell($1, $2, $3, $4, $5, $6)); }

FrameStop : STOP 
	{ $$ = bind(STOP, 0); }

FrameGoto : GOTO INT
	{ $$ = bind(GOTO, $2); }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色香色香欲天天天影视综合网| 高清日韩电视剧大全免费| 中文字幕中文字幕中文字幕亚洲无线| 91精品免费在线| 欧美一区二区三区免费大片| 欧美一区午夜精品| 精品国产伦一区二区三区观看体验| 欧美精品久久久久久久久老牛影院| 在线观看免费成人| 91精品国产91久久久久久最新毛片 | 99久久夜色精品国产网站| 成人黄色一级视频| 色偷偷一区二区三区| 欧美系列亚洲系列| 精品国产一区二区三区久久影院 | 中文字幕佐山爱一区二区免费| 1024成人网| 午夜免费久久看| 久久av老司机精品网站导航| 国产成人精品亚洲日本在线桃色| 成人黄色av电影| 欧美久久免费观看| 久久精品男人天堂av| 亚洲人成伊人成综合网小说| 三级久久三级久久| 国内成人精品2018免费看| 91亚洲国产成人精品一区二三| 欧美日韩久久一区二区| 日韩天堂在线观看| 日韩伦理免费电影| 久久精品国产色蜜蜜麻豆| 白白色 亚洲乱淫| 欧美精品丝袜久久久中文字幕| 国产午夜亚洲精品午夜鲁丝片| 亚洲综合视频在线观看| 国产自产2019最新不卡| 色视频一区二区| 精品福利一区二区三区| 一区二区三区在线视频免费| 精品一区二区三区久久久| 一本到不卡精品视频在线观看| 日韩午夜激情免费电影| 亚洲精品中文字幕乱码三区| 国产一区二区三区观看| 欧美另类一区二区三区| 国产精品少妇自拍| 久久99在线观看| 337p亚洲精品色噜噜噜| 亚洲综合图片区| www.亚洲人| 国产偷v国产偷v亚洲高清| 亚洲1区2区3区4区| 91福利视频在线| 中文字幕永久在线不卡| 国产麻豆日韩欧美久久| 日韩你懂的电影在线观看| 一区二区三区日韩| 91污片在线观看| 中文字幕欧美区| 国产精品自拍一区| 久久免费午夜影院| 蜜桃一区二区三区在线观看| 欧美日本一区二区在线观看| 亚洲美女偷拍久久| 91国在线观看| 亚洲精品久久7777| 92精品国产成人观看免费 | 亚洲女性喷水在线观看一区| 国产毛片精品一区| 精品国产成人系列| 奇米在线7777在线精品| 日韩精品中文字幕一区| 免费看精品久久片| 精品成人一区二区| 激情偷乱视频一区二区三区| 精品国产三级电影在线观看| 蜜臀精品久久久久久蜜臀| 欧美一级欧美三级| 久久99国产精品久久99| 国产亚洲婷婷免费| 亚洲三级在线免费观看| 国产99久久久久| 国产欧美中文在线| 丁香婷婷深情五月亚洲| 中文字幕一区在线观看| www.亚洲在线| 亚洲电影视频在线| 91精品国产综合久久久蜜臀图片| 蜜桃传媒麻豆第一区在线观看| 精品久久久久香蕉网| 国产伦理精品不卡| 亚洲国产精品99久久久久久久久| 不卡一区在线观看| 亚洲国产日韩a在线播放性色| 欧美精品粉嫩高潮一区二区| 日本v片在线高清不卡在线观看| 精品国产91洋老外米糕| 成人国产精品免费网站| 亚洲人成亚洲人成在线观看图片 | 亚洲自拍偷拍欧美| 日韩欧美在线不卡| voyeur盗摄精品| 亚洲成人综合网站| 国产清纯白嫩初高生在线观看91 | 欧美电视剧免费全集观看| 欧美午夜精品电影| 免费国产亚洲视频| 亚洲欧洲日韩一区二区三区| 欧美亚洲精品一区| 国产suv精品一区二区三区| 又紧又大又爽精品一区二区| 日韩欧美一级二级| 91色porny蝌蚪| 国内成人精品2018免费看| 一区二区三区欧美久久| 精品国产乱码久久久久久影片| 色8久久精品久久久久久蜜| 久久激情五月激情| 樱桃国产成人精品视频| 久久久久久久久一| 在线一区二区观看| 国产精品亚洲人在线观看| 五月婷婷综合在线| 亚洲视频每日更新| 国产喷白浆一区二区三区| 欧美日韩aaaaa| 91精品1区2区| 色综合天天综合网天天看片| 国产精品一区二区免费不卡 | 韩国女主播成人在线| 亚洲成人av一区二区三区| 中日韩av电影| 国产日韩精品一区二区浪潮av| 欧美一区二区三区四区视频| 在线观看亚洲一区| 91影院在线免费观看| 不卡免费追剧大全电视剧网站| 黄一区二区三区| 久久福利资源站| 久久国内精品自在自线400部| 婷婷夜色潮精品综合在线| 亚洲国产综合色| 午夜精品久久久久久久99水蜜桃| 一区二区三区在线观看网站| 亚洲视频免费在线| 亚洲美女在线国产| 亚洲一区二区三区四区中文字幕| 国产精品第五页| 亚洲欧美激情插| 亚洲一区av在线| 亚洲国产美国国产综合一区二区| 一区二区三区在线视频观看 | 国产一区二区三区高清播放| 久久99在线观看| 国产成人8x视频一区二区| 丁香激情综合国产| 99精品久久99久久久久| 欧洲视频一区二区| 在线观看国产一区二区| 欧美日韩综合不卡| 欧美日韩成人综合天天影院| 日韩一区二区三区视频在线观看 | 99这里都是精品| 91亚洲精品久久久蜜桃| 欧美综合欧美视频| 在线不卡一区二区| 亚洲精品在线电影| 国产精品情趣视频| 亚洲精品国产成人久久av盗摄 | 国产91精品一区二区麻豆网站| 国产高清在线精品| 色综合 综合色| 91精品久久久久久久91蜜桃| 国产亚洲欧美激情| 亚洲欧美另类小说视频| 石原莉奈在线亚洲三区| 国产一区二区三区观看| 色婷婷av一区| 欧美mv日韩mv| 亚洲综合一区在线| 国精产品一区一区三区mba桃花| 不卡一区中文字幕| 欧美一区二区三区视频在线 | av在线播放成人| 在线成人av网站| 中文字幕亚洲视频| 免费成人在线网站| 色婷婷综合久久| 久久精品欧美一区二区三区麻豆| 亚洲综合成人在线| 懂色av噜噜一区二区三区av| 欧美天堂亚洲电影院在线播放| 日韩亚洲电影在线| 亚洲视频你懂的| 国产综合久久久久久鬼色| 欧美做爰猛烈大尺度电影无法无天| 欧美精品久久天天躁| 亚洲日本免费电影| 国产一区二区三区精品视频| 91麻豆精品国产91久久久资源速度 |