26.04.2022, 18:51
(Dieser Beitrag wurde zuletzt bearbeitet: 26.04.2022, 19:04 von Manfred Aabye.)
Das hab ich zu llAddToLandBanList gefunden.
llAddToLandBanList Test
Funktionen Test
• llAddToLandPassList
• llRemoveFromLandBanList
• llRemoveFromLandPassList
• llResetLandBanList
• llResetLandPassList
Alles hat seine vor- und Nachteile.
llAddToLandBanList Test
PHP-Code:
//llAddToLandBanList-example.lsl
default
{
state_entry()
{
//llSetText("Don't touch me or you'll be banned for 30 minutes!", <1, 0, 0>, 1);
llSetText("Klick mich nicht an oder du wirst für 30 Minuten gesperrt!", <1, 0, 0>, 1);
}
touch_start(integer num)
{
llAddToLandBanList(llDetectedKey(0), 0.5);
}
}
Funktionen Test
• llAddToLandPassList
• llRemoveFromLandBanList
• llRemoveFromLandPassList
• llResetLandBanList
• llResetLandPassList
PHP-Code:
// Functions - Funktionen
// • llAddToLandPassList
// • llRemoveFromLandBanList
// • llRemoveFromLandPassList
// • llResetLandBanList
// • llResetLandPassList
//
// This is not a complete solution, requires full avatar names to work - even for unbanning someone!
// This is meant only as an example of the land ban and pass management functions.
// free to copy, use, modify, distribute - just don't ask me to debug your modified code. ;-)
//
// Dies ist keine vollständige Lösung, erfordert vollständige Avatarnamen, um zu funktionieren - sogar um jemanden zu entsperren!
// Dies ist nur als Beispiel für die Landverbots- und Passverwaltungsfunktionen gedacht.
// frei zu kopieren, zu verwenden, zu modifizieren, zu verteilen - bitte mich nur nicht, deinen modifizierten Code zu debuggen. ;-)
//
// Commands are:
// /5 ban:full_avatar_name
// /5 tempban:full_avatar_name
// /5 unban:full_avatar_name
// /5 pass:full_avatar_name
// /5 unpass:full_avatar_name
// /5 clearban
// /5 clearpass
string command;
default
{
state_entry()
{
llListen(5, "", llGetOwner(), "");
}
on_rez(integer param)
{
llResetScript();
}
listen(integer chan, string name, key id, string message)
{
if (command != "")
{
llOwnerSay("Sorry, still processing last command, try again in a second.");
llOwnerSay("Tut mir leid, der letzte Befehl wird noch bearbeitet, versuche es gleich noch einmal.");
}
list args = llParseString2List(message,[":"],[]);
command = llToLower(llList2String(args,0));
if (command == "clearbans")
{
llResetLandBanList();
}
if (command == "clearpass")
{
llResetLandPassList();
}
else
{
llSensor(llList2String(args,1),NULL_KEY,AGENT,96,PI);
}
}
no_sensor()
{
command = "";
}
sensor(integer num)
{
integer i = 0;
for (; i < num; ++i)
{
if (command == "ban")
{
// Ban indefinetely
llAddToLandBanList(llDetectedKey(i),0.0);
}
if (command == "tempban")
{
// Ban for 1 hour.
llAddToLandBanList(llDetectedKey(i),1.0);
}
if (command == "unban")
{
llRemoveFromLandBanList(llDetectedKey(i));
}
if (command == "pass")
{
// Add to land pass list for 1 hour
llAddToLandPassList(llDetectedKey(i),1.0);
}
if (command == "unpass")
{
llRemoveFromLandPassList(llDetectedKey(i));
}
}
command = "";
}
}
Alles hat seine vor- und Nachteile.
Ein Metaversum sind viele kleine Räume, die nahtlos aneinander passen,
sowie direkt sichtbar und begehbar sind, als wäre es aus einem Guss.
sowie direkt sichtbar und begehbar sind, als wäre es aus einem Guss.