LlGetAnimation/nl: Difference between revisions
Jump to navigation
Jump to search
New page: {{LSL Function/avatar|id|sim=*}}{{LSL_Function/nl |func_id=162|func_sleep=0.0|func_energy=10.0 |func=llGetAnimation|return_type=string|p1_type=key|p1_name=id |func_footnote=[[llGetAgentInf... |
San Diavolo (talk | contribs) No edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{LSL Function/avatar|id|sim=*}} | {{LSL_Function/nl | ||
|inject-2={{LSL Function/avatar|id|sim=*}} | |||
|func_id=162|func_sleep=0.0|func_energy=10.0 | |func_id=162|func_sleep=0.0|func_energy=10.0 | ||
|func=llGetAnimation|return_type=string|p1_type=key|p1_name=id | |func=llGetAnimation|return_type=string|p1_type=key|p1_name=id|p1_desc=UUID van een avatar in dezelfde sim. | ||
|func_footnote=[[llGetAgentInfo]] | |func_footnote=[[llGetAgentInfo]] geeft informatie over sommige animatie-statussen (typen, afwezig, bezig), die niet door deze functie worden gedekt. [[llGetAnimationList]] geeft meer details over de lopende animaties, maar is niet zo precies als llGetAnimation over de status van de avatar. | ||
|func_desc | |func_desc | ||
|return_text= | |return_text=met de naam van de huidige bewegingsanimatie van avatar {{LSLP|id}}. Zie de tabel hieronder. | ||
|spec | |spec | ||
|caveats | |caveats=*Deze functie kan een lege string opleveren als de avayar net aan het uitloggen is. | ||
|constants={{{!}} | *Er kunnen nieuwe waarden worden toegevoegd, waardoor deze lijst niet langer compleet is. Scripts moeten er rekening mee houden, dat ze een onbekende waarde kunnen terugkrijgen. | ||
|constants= | |||
{{{!}} id="Constants" | |||
{{!}}+ '''Complete lijst met mogelijke waarden op 15 Augustus 2011.'''{{Footnote|Bij het afsluiten van {{jira|SCR-26}}, is de complete lijst gepubliceerd, maar er is niet verteld welke er enkel bestaan en welke er ook daadwerkelijk gebruikt worden.|Bij het afsluiten van SCR-26, is de complete lijst gepubliceerd, maar er is niet verteld welke er enkel bestaan en welke er ook daadwerkelijk gebruikt worden.}} | |||
{{!}}-valign="top" | {{!}}-valign="top" | ||
{{!}} | {{!}} | ||
{{{!}}{{Prettytable}} | {{LSL Animation States|title={{LSLGC|Animation/Override|Overschrijfbare}} animaties}} | ||
{{!}} | |||
{{{!}} class="sortable" {{Prettytable|style=margin-top:0;}} | |||
{{!}}+Andere gebruikelijke animaties | |||
{{!}}-{{Hl2}} | |||
!Animatie | |||
!Omschrijving | |||
{{!}}- | |||
{{!}}"" | |||
{{!}}Tijdens het uitloggen | |||
{{!}}- | |||
{{!}}"Init" | |||
{{!}}Bij het inloggen en na een teleport | |||
{{!}}} | |||
{{!}} | |||
{{{!}} class='sortable' {{Prettytable|style=margin-top:0;}} | |||
{{!}}+Ongebruikelijke animaties | |||
{{!}}-{{Hl2}} | {{!}}-{{Hl2}} | ||
!Value | !Value | ||
!Description | !Description | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Crouch" | ||
{{!}} | |||
{{!}}- | |||
{{!}}"Epsilon" | |||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Fall Down Land" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Finish Animation" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Fly" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"FlySlow" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Hard Land" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Hover Down" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Hover Up" | ||
{{!}} | {{!}} | ||
{{!}}} | {{!}}- | ||
{{!}}"Hover" | |||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Medium Land" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"PreFlying" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"PreJump" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Prep For Teleport" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Run" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Sit on Ground" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Sit" | ||
{{!}} | {{!}} | ||
{{!}}} | {{!}}- | ||
{{!}}"Soft Land" | |||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Stand" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Stride" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Take Off" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Turn Done" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Turn Left" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Turn Right" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Uncrouch" | ||
{{!}} | {{!}} | ||
{{!}}- | {{!}}- | ||
{{!}}" | {{!}}"Walk" | ||
{{!}} | {{!}} | ||
{{!}}- | |||
{{!}}} | {{!}}} | ||
{{!}}} | {{!}}} | ||
|examples | |examples= | ||
<source lang="lsl2"> | |||
// Een simpel voorbeeld van het overschrijven van een animatie | |||
// Laat de avatar door de lucht rennen tijdens het springen | |||
key eigenaar; // de ID van de eigenaar | |||
string vorige; // vorige waarde van llGetAnimation | |||
opstarten(key id) { | |||
if (id) { | |||
// wordt aangetrokken of gedragen tijdens reset | |||
llRequestPermissions(id, PERMISSION_TRIGGER_ANIMATION); | |||
eigenaar = id; | |||
} else { | |||
llSetTimerEvent(0.0); // stop de timer | |||
} | |||
} | |||
default { | |||
state_entry() { | |||
// als het script wordt gereset tijdens het dragen | |||
if (llGetAttached()) { | |||
opstarten(llGetOwner()); | |||
} | |||
} | |||
attach(key id) { | |||
opstarten(id); | |||
} | |||
run_time_permissions(integer perm) { | |||
if (perm & PERMISSION_TRIGGER_ANIMATION) { | |||
llSetTimerEvent(0.25); // start de timer | |||
} | |||
} | |||
timer() { | |||
string anim = llGetAnimation(gOwner); | |||
if (vorige != anim) { | |||
// alleen als de animatie is veranderd | |||
if (anim == "Jumping") { | |||
// Je kunt de ingebouwde animatie stoppen als je wilt, maar | |||
// dit kan een nadelig effect hebben: de avatar kan vast | |||
// komen te zitten en het resultaat van llGetAgentInfo kan | |||
// onbetrouwbaar worden. Test het altijd even. | |||
// llStopAnimation("jump"); | |||
llStartAnimation("run"); | |||
} | |||
else if (vorige == "Jumping") { // net klaar met springen | |||
// "run" is een doorlopende animatie | |||
// We moeten hem dus handmatig stoppen | |||
llStopAnimation("run"); | |||
} | |||
vorige = anim; // onthouden voor de volgende vergelijking | |||
} | |||
} | |||
} | |||
</source> | |||
|helpers | |helpers | ||
|also_functions={{LSL DefineRow||[[llGetAgentInfo]]|}} | |also_functions={{LSL DefineRow||[[llGetAgentInfo]]|}} |
Latest revision as of 05:57, 25 August 2025
LSL Portal | Functies | Events | Types | Operators | Constanten | Flow Control | Script Bibliotheek | Tutorials |
Functie: string llGetAnimation( key id );
162 | Functie ID |
0.0 | Vertraging |
10.0 | Energie |
Levert een a string op met de naam van de huidige bewegingsanimatie van avatar id. Zie de tabel hieronder.
• key | id | – | UUID van een avatar in dezelfde sim. |
llGetAgentInfo geeft informatie over sommige animatie-statussen (typen, afwezig, bezig), die niet door deze functie worden gedekt. llGetAnimationList geeft meer details over de lopende animaties, maar is niet zo precies als llGetAnimation over de status van de avatar.
|
|
|
Kanttekeningen
- Deze functie kan een lege string opleveren als de avayar net aan het uitloggen is.
- Er kunnen nieuwe waarden worden toegevoegd, waardoor deze lijst niet langer compleet is. Scripts moeten er rekening mee houden, dat ze een onbekende waarde kunnen terugkrijgen.
Voorbeelden
// Een simpel voorbeeld van het overschrijven van een animatie
// Laat de avatar door de lucht rennen tijdens het springen
key eigenaar; // de ID van de eigenaar
string vorige; // vorige waarde van llGetAnimation
opstarten(key id) {
if (id) {
// wordt aangetrokken of gedragen tijdens reset
llRequestPermissions(id, PERMISSION_TRIGGER_ANIMATION);
eigenaar = id;
} else {
llSetTimerEvent(0.0); // stop de timer
}
}
default {
state_entry() {
// als het script wordt gereset tijdens het dragen
if (llGetAttached()) {
opstarten(llGetOwner());
}
}
attach(key id) {
opstarten(id);
}
run_time_permissions(integer perm) {
if (perm & PERMISSION_TRIGGER_ANIMATION) {
llSetTimerEvent(0.25); // start de timer
}
}
timer() {
string anim = llGetAnimation(gOwner);
if (vorige != anim) {
// alleen als de animatie is veranderd
if (anim == "Jumping") {
// Je kunt de ingebouwde animatie stoppen als je wilt, maar
// dit kan een nadelig effect hebben: de avatar kan vast
// komen te zitten en het resultaat van llGetAgentInfo kan
// onbetrouwbaar worden. Test het altijd even.
// llStopAnimation("jump");
llStartAnimation("run");
}
else if (vorige == "Jumping") { // net klaar met springen
// "run" is een doorlopende animatie
// We moeten hem dus handmatig stoppen
llStopAnimation("run");
}
vorige = anim; // onthouden voor de volgende vergelijking
}
}
}
Zie ook
Functies
• | llGetAgentInfo | |||
• | llGetAnimationList |