Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Detect collision with specific object name?

GRubinJr Mighty
Registered User
Join date: 11 Mar 2008
Posts: 5
02-11-2009 07:31
I wish to create a script that triggers an event on collision -- simple enough, except I wish the script to react ONLY when it encounters a specific object name. I must be doing something wrong, because every attempt to rewrite the simple collision_start script results in an error. Could someone provide me with a rudimentary example of how this might be done?
Innula Zenovka
Registered User
Join date: 20 Jun 2007
Posts: 1,825
02-11-2009 07:33
http://lslwiki.net/lslwiki/wakka.php?wakka=llCollisionFilter
Hewee Zetkin
Registered User
Join date: 20 Jul 2006
Posts: 2,702
02-11-2009 11:38
Or, for less rigid requirements:

CODE

// Only call this from a collision* event handler; it uses llDetected*() functions.
integer matchesMyCollisionCriteria(integer detectIndex)
{
// Whatever you want, really, but here's an example:
return (llSubStringIndex(llToLower(llDetectedName(detectIndex)), "fruit") >= 0);
}

default
{
collition_start(integer nDetected)
{
integer i;
for (i = 0; i < nDetected; ++i)
{
if (matchesMyCollisionCriteria(i))
{
// Do something interesting with fruit, fruit substitute, or fruit-flavored gunk.... ;-)
}
}
}
}