第三人称 第三视角

【更新】2022-01-23

  • 代码如下(复制以下代码可粘贴到工坊)
变量
{
	玩家:
		0: cameraParam
		1: cameraRevision
}

子程序
{
	0: cameraService
}

规则("视角逻辑")
{
	事件
	{
		子程序;
		cameraService;
	}

	动作
	{
		If(事件玩家.cameraParam == 1);
			停止镜头(事件玩家);
		Else If(取整(事件玩家.cameraParam, 下) == 2);
			事件玩家.cameraRevision = 眼睛位置(事件玩家) - 所选位置(事件玩家);
			If(事件玩家.cameraParam == 2.100);
				开始镜头(事件玩家, 射线命中位置(事件玩家 + 事件玩家.cameraRevision, 事件玩家 + 事件玩家.cameraRevision + 面朝方向(事件玩家) * 3, 无, 无,
					假), 事件玩家 + 事件玩家.cameraRevision, 0);
			Else;
				小字体信息(事件玩家, 自定义字符串("第二视角参数错误!"));
			End;
		Else If(取整(事件玩家.cameraParam, 下) == 3);
			事件玩家.cameraRevision = 眼睛位置(事件玩家) - 所选位置(事件玩家);
			If(事件玩家.cameraParam == 3.100);
				开始镜头(事件玩家, 射线命中位置(事件玩家 + 事件玩家.cameraRevision, 事件玩家 + 事件玩家.cameraRevision * 1.500 + 面朝方向(事件玩家) * -3, 无, 无, 假), 射线命中位置(
					事件玩家 + 事件玩家.cameraRevision, 事件玩家 + 事件玩家.cameraRevision + 面朝方向(事件玩家) * 100, 无, 无, 假), 0);
			Else If(事件玩家.cameraParam == 3.200);
				开始镜头(事件玩家, 射线命中位置(事件玩家 + 事件玩家.cameraRevision, 事件玩家 + 事件玩家.cameraRevision * 1.500 + 面朝方向(事件玩家) * -3, 无, 无, 假),
					事件玩家 + 事件玩家.cameraRevision + 面朝方向(事件玩家) * 35, 0);
			Else If(事件玩家.cameraParam == 3.300);
				开始镜头(事件玩家, 射线命中位置(事件玩家 + 事件玩家.cameraRevision, 事件玩家 + 事件玩家.cameraRevision + 面朝方向(事件玩家) * -3, 无, 无, 假), 事件玩家 + 事件玩家.cameraRevision,
					0);
			Else;
				小字体信息(事件玩家, 自定义字符串("第三视角参数错误!"));
			End;
		Else;
			小字体信息(事件玩家, 自定义字符串("视角参数错误!"));
		End;
	}
}

规则("视角控制(当前为:第一视角 与 第三视角 相互转换)")
{
	事件
	{
		持续 - 每名玩家;
		双方;
		全部;
	}

	条件
	{
		正在使用喷漆交流(事件玩家) == 真;
	}

	动作
	{
		事件玩家.cameraParam = 事件玩家.cameraParam == 3.100 ? 1 : 3.100;
		调用子程序(cameraService);
	}
}

【更新】2020-12-14

  • 已重制。
  • 已删除。

【更新】2020-12-03

  • 加入 重制计划1

评论
这里空空如也~
这里空空如也~