首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在第二人生中读记事本文件?

在第二人生中读记事本文件?
EN

Stack Overflow用户
提问于 2014-05-29 07:31:29
回答 4查看 1.2K关注 0票数 1

最近我开始玩“第二人生”。并希望在LSL中开始对其进行编码。

在我的程序中,我想根据我在记事本文件中提到的颜色来改变我的化身衬衫的颜色,并且我不断地随机地改变这个值(将值写到记事本),比如红色到绿色或蓝色等等。

但问题是,如何使用LSL (Linden Scripting Lang)将记事本文件(存储在本地HDD上)读入第二生活,是我的难题。我试图通过设置本地apache服务器将其读取为建议在这里,但我们不能这样做,因为它不被识别为不是通过internet托管的we服务器。

我们能用NoteCard吗.?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-08-02 05:56:09

本质上,您希望在第二生命中使用llHTTPRequest从web服务器读取某些内容。

最优雅的解决方案是使用PHP和MySQL创建web界面。这里有一个很好的脚本:https://github.com/jgpippin/sldb

甚至更简单的选项没有任何数据库:

  1. 创建一个名为color.txt的文本文件,只有一行,如green
  2. 使用FTP将文本文件上载到服务器,我建议使用FileZilla
  3. 创建PHP文件(下面的代码)
  4. 在“第二生命”中创建一个对象来读取PHP文件
  5. 做一些有结果的事情

感谢http://lslwiki.net/lslwiki/wakka.php?wakka=ExamplellHTTPRequest给出了这个代码的概念和基础:

文件sl.php

代码语言:javascript
复制
<?php
$color = file_get_contents('http://yourdomain.com/color.txt');
echo "Your color selection is " . $color . ".\n";
?>

对象中的脚本

代码语言:javascript
复制
key requestid; // check if we're getting the result we've asked for
// all scripts in the same object get the same replies

default
{
    touch_start(integer number)
    {
        requestid = llHTTPRequest("http://yourdomain.com/sl.php", 
            [HTTP_METHOD, "POST",
             HTTP_MIMETYPE, "application/x-www-form-urlencoded"],
            "");
    }

    http_response(key request_id, integer status, list metadata, string body)
    {
        if (request_id == requestid)
            llWhisper(0, body);
    }
}

当然,您不只是低声输入输出,而是使用该值执行一些操作,例如,将公共颜色名称的列表转换为HEX值或其他颜色格式,然后使用该列表更改所述对象的颜色。但是你有了这样的想法--可以把文本文档中的一些东西读入LSL。

此外,如果您想使用Dropbox而不是FTP来更容易地将文件放到web上,您只需获取公共链接,然后在末尾添加?dl=1,以强制文件打开,而不是在浏览器中显示为带有附加HTML内容的网页。例如,您可以使用:

代码语言:javascript
复制
 $color = file_get_contents('https://www.dropbox.com/s/i0wpav054k5uept/color.txt?dl=1');

希望这能有所帮助!

票数 2
EN

Stack Overflow用户

发布于 2014-05-29 09:56:46

由于LSL需要能够在不联机时运行,所以本地web服务器和本地文件不能与LSL一起使用。

唯一可用的选择是发布文本文件,这样就可以从互联网上访问它。如果您不想获得一个完整的web主机,您应该能够使用一个公共Dropbox文件夹。

票数 0
EN

Stack Overflow用户

发布于 2014-05-30 06:55:25

您不能使用LSL在您的计算机上读取文件-至少,不是正式的。从理论上讲,第三方的第二人生查看器可以让你。不过,我不认为他们中的任何一个会这样做。您可以通过调查第三方查看器目录中列出的观众来检查自己。

现在,您只需将数据移动到第二生命节点,或者以一种可以通过Internet访问的方式保存它。从notecard读取数据的是非常简单。在线托管您的文件要复杂一些,包括使用LSL的HTTP函数进行检索。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23928104

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档