Commit 9381cdae by junxiang

feat 新增严肃游戏。

parent 1761c536
import { AlignEnums, BoardElementType } from "./enums";
/*
协作画板核心数据model
/**
* 协作画板核心数据model
*/
export interface IBoardState {
version: string; //总版本号
......@@ -12,10 +12,9 @@ export interface IBoardState {
scale: number; //缩放
};
cover: string; //封面
elements: ICanvasElement[];//自定义节点列表
elements: ICanvasElement[]; //自定义节点列表
}
export interface ICanvasElement extends IRectangle {
creator: string; //创作者id
creatAt: number; //创作id
......@@ -40,6 +39,4 @@ export interface ICanvasElement extends IRectangle {
ext: Dictionary<any>;
}
export interface ICanvasElementChangePayload{
}
export interface ICanvasElementChangePayload {}
......@@ -64,4 +64,11 @@ interface ICrop {
type IStyleLine = string
type boolNumber = 0|1
/**
* 所有人员创作的资源共有的字段
*/
interface CreateResource{
}
export enum ScriptElementTypeEnums {
ShowNode = "ShowNode", //基础元素
InteractionNode = "InteractionNode", //交互元素
}
/**
* 流程节点类型
*/
export enum ScriptFlowNodeTypeEnums {
/**
* 触发一条流程开始执行,标志一条流程的开始
* 开始类节点 ■触发开始|入场开始
*/
StartNode = "StartNode",//开始类节点
/**
* 标志一条流程的结束/完成
* 结束类节点 ■ 结束|转场结束|重置
*/
EndNode = "EndNode",//结束类节点
/**
* 基本的元素操作节点:通常需要绑定一个元素,然后对该元素执行对应的操作
* ■ 入场|退场|强调|持续动画|对话|分支对话|元素变形|元素重置
* 基本的事件节点
* ■ 反馈 网页链接 等待
*/
BaseEventNode = "BaseEventNode",//基本的元素操作节点
/**
* 特殊的元素操作节点:通常需要绑定一个特定类型的元素,然后对该元素执行对应的操作
* ■ 修改文字|替换图片|编辑表格|编辑图表|播放音频|修改进度|翻转卡片
* 特殊的事件节点
* ■ 移动镜头|场景弹窗
*/
SpecialEventNode = "SpecialEventNode", //特殊事件节点
/**
* 主要用于获取元素、获取元素的绑定值、修改元素的绑定值,以及相关的操作。
* ■ 随机抽取|抽取重置|获取集合|创建集合|获取元素|取值|赋值
*/
AssignOrGetNode = "GetterSetterNode", //取值/赋值节点
/**
* 用于各种值(绑定值、文本值等)的运算和条件判断
* ■ 计算:接收传入的参数,按预设的算式执行运算,并向下传递运算结果。
* ■ 条件:接收传入的参数,按预设的算式执行逻辑运算,并根据运算结果执行对应的路线
*/
LogicalNode = "LogicalNode", //逻辑运算节点
/**
* 用于与外部程序进行交互和数据的导出
* ■ 输入:从外层程序接收指定字段的值,并向下传递(需要外层程序配合传入)。
* ■ 输出:创建自定义的字段或图片,并向外层程序输出(需要外层程序配合接收)。
* ■ 导出:根据所选的场景生成PDF文件,并下载到本地。
*/
InputOutputNode = "InputOutputNode", //输入输出节点
}
/**
* 严肃游戏model
*/
export interface IScriptGame {
version: string; //总版本号
id: string;
creatAt: number;
creator: string; //创建者ID
mode: "editor" | "player"; //编辑和播放环境
scenes: IScriptSceneItem[];
}
/**
* 场景
*/
export interface IScriptSceneItem {
id: string;
name: string; //名称
cover: string; //封面
elements: IScriptElementItem[]; //节点
//流程配置
flows: {
nodes: IScriptSceneFlowNode[];
};
}
export interface IScriptSceneFlowNode extends IRectangle {
nodeType: ScriptFlowNodeTypeEnums; //节点类型
links:any[],//存储和其他node的关联关系
}
export interface IScriptElementItem extends IRectangle {
creator: string; //创作者id
creatAt: number; //创建时间
id: string;
elementType: ScriptElementTypeEnums; //类型
dragAble: boolean; //允许拖拽
visible: boolean; //隐藏
defaultVisible: boolean; //是否默认隐藏
//交互元素在播放环境下是可交互的,可以直接对其进行一些操作(比如切换轮播图)
interactionAble: boolean; //是否支持交互,播放环境下可以交互
outputValueType: "string" | "number" | "list" | boolNumber;
lock: boolean; //是否锁定
edit: false; //是否在编辑
//position: {};//定位
//变化
transform: {
zIndex: number; //层级
scale: number; //缩放
rotate: number; //旋转
};
}
```
{"content":"<div data-id="TYfH-WRix-" data-app-type="intex" data-app-name="严肃游戏" data-app-title="dfd" data-app-relation-id="a45d6400-9b44-11ef-9385-c752999517ae" data-app-project-id="a45d6401-9b44-11ef-9385-c752999517ae" class="app-view" data-type="app"></div><div data-id="WJA2vSL-5J" data-app-type="co" data-app-name="主题讨论" data-app-title="dd" data-app-relation-id="a09ed560-9b44-11ef-9385-c752999517ae" data-app-project-id="a09ed561-9b44-11ef-9385-c752999517ae" class="app-view" data-type="app"></div><p data-id="NU0srGt3fq"></p>","hideTitle":false,"interactionConfigs":{},"appConfigs":{"TYfH-WRix-":{"data":{"id":"a45d6401-9b44-11ef-9385-c752999517ae","CommitCount":1,"isScoring":true},"title":"dfd","type":"intex"},"WJA2vSL-5J":{"data":"{"PK_TopicTemplateGuid":"a09ed561-9b44-11ef-9385-c752999517ae","FK_MyPacketGuid":"df3ef980-9b2b-11ef-9385-c752999517ae","FK_PacketStoreGuid":"","Title":"dd","ContentSummary":"312312312312312321","Content":"<p>312312312312312321</p><figure class=\"table\"><table><tbody><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr><tr><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr></tbody></table></figure>","Cover":"https://img.lessonplan.cn/IMG/LessonPlan/Template/DefaultCover/defaultcover4.jpg","Status":1,"FK_CreatorGuid":"8c24f7bb-4547-bfe5-86f8-e65b83cc0911","CreateTime":"2024.11.05 15:07","Version":"1.03","NeedReplyNum":1,"NeedCommentNum":3,"isScoring":true}","title":"dd","type":"co"}},"iframeConfigs":{},"defaultStyle":{"fontSize":"16px"},"cover":{"hide":false},"version":"1.0"}
```
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment