2015-03-19 2 views
1

У меня есть LSL-скрипт, который дает объект пользователю с помощью llGiveInventory(). Есть ли способ для моего скрипта узнать, принял ли пользователь или отклонил объект?Получение результата llGiveInventory

В моем просмотра (Firestorm), когда я принимаю объект, уделяемое я могу увидеть сообщение:

«Сетка:. Примитив, принадлежащий Test User дал вам Pizza Примитивный расположен в MyRegion < 107.7737, 137.6579, 23,5>.

это сообщение даже показывает на журнал разговора, так что, кажется, появляется в виде сообщения. Я пытался слушать на канале 0 и DEBUG_CHANNEL, но и не слышал сообщение.

H ERE в текущий скрипт:

string objName = "Pizza"; 
default { 
    state_entry() { 
     llListen(DEBUG_CHANNEL, "", NULL_KEY, ""); 
    } 

    touch_start(integer num_detected) { 
     llGiveInventory(llDetectedKey(0), objName); 
    } 

    listen (integer channel, string name, key id, string message) { 
     llOwnerSay("Did you hear that? I heard " + message); 
    } 
} 

ответ

2

Там нет никакого способа узнать, если сделка не удалась. Если вы не отправите сообщение, когда инвентарь передан в пример, а скрипт prim-скрипта проверяет его инвентарь и отправляет сообщение с помощью llRegionSay. - LSL Wiki

К сожалению, вы не можете видеть, была ли сделка успешной или нет

http://wiki.secondlife.com/wiki/LlGiveInventory

+0

Крысы. Вот чего я боялся. Благодаря! – Pete

+0

Возможно, вы сможете прослушивать ошибки при неудачной передаче. – BlindWanderer