开启cocos2dx 3.0的Console功能

时间:2022-06-08 15:16:33

以下内容用于自己知识的备忘,想看详细内容,请参照如下地址。

原英文文地址:

http://discuss.cocos2d-x.org/t/cocos3-0-tutorial-console-tutorial/14283?username_filters=Lef

注意点:

1.在windows平台下,连接本地时,IP应该为:127.0.0.11234,即 telnet 127.0.0.1 1234; 在Mac平台下,才是telnet  0.0.0.0 1234。这一点,原作者没有写清楚。

2.涉及知识点:

  a.Console用途

   console为高级配制提供接口,即可以在不需要重新编译代码的情况下,改变游戏中的任何变量,并且查看log和其他有用数据。

  b.注意点

   注意:如果在真机或其他电脑上运行游戏,应该输入设备本地IP地址,类似于192.168.0.122这样的地址,而不是0.0.0.0。

  不容易理解部分翻译:

   首先,用类型Console::Command定义变量。(什么是Console::Command?它是含有3个字段的简单结构:第一个是字符串类型的命令名称,第二个是字符串类型的命令描述,第三个是回调函数。)

   如何初始化命令?设置命令名称为label,描述为:”Change or print the current label string. Args:[<labelstring>]”,回调函数为空。

   进一步看回调函数。它是带有两个参数的lambda表达式,首先是文件描述符,用来自定义发送响应;其次是任意的文本,比如输入命令:label  test 1 2 3 ,参数等于test  1 2 3.

     在命令行,如果只输入label,回调函数会从游戏中发回label的文本作为响应;否则用命令行设置的参数值设置游戏中的label的文本。前者是从游戏中获得信息显示在命令行中,后者是将命令行中输入的信息显示在游戏中。此处的游戏客户端有些像FTP服务器。