llanimationstates.cpp

Go to the documentation of this file.
00001 
00032 //-----------------------------------------------------------------------------
00033 // Agent Animation State
00034 //-----------------------------------------------------------------------------
00035 
00036 #include "linden_common.h"
00037 
00038 #include "llanimationstates.h"
00039 #include "llstring.h"
00040 
00041 LLUUID AGENT_WALK_ANIMS[] = {ANIM_AGENT_WALK, ANIM_AGENT_RUN, ANIM_AGENT_CROUCHWALK, ANIM_AGENT_TURNLEFT, ANIM_AGENT_TURNRIGHT};
00042 S32 NUM_AGENT_WALK_ANIMS = sizeof(AGENT_WALK_ANIMS) / sizeof(LLUUID);
00043 
00044 LLUUID AGENT_GUN_HOLD_ANIMS[] = {ANIM_AGENT_HOLD_RIFLE_R, ANIM_AGENT_HOLD_HANDGUN_R, ANIM_AGENT_HOLD_BAZOOKA_R, ANIM_AGENT_HOLD_BOW_L};
00045 S32 NUM_AGENT_GUN_HOLD_ANIMS = sizeof(AGENT_GUN_HOLD_ANIMS) / sizeof(LLUUID);
00046 
00047 LLUUID AGENT_GUN_AIM_ANIMS[] = {ANIM_AGENT_AIM_RIFLE_R, ANIM_AGENT_AIM_HANDGUN_R, ANIM_AGENT_AIM_BAZOOKA_R, ANIM_AGENT_AIM_BOW_L};
00048 S32 NUM_AGENT_GUN_AIM_ANIMS = sizeof(AGENT_GUN_AIM_ANIMS) / sizeof(LLUUID);
00049 
00050 LLUUID AGENT_NO_ROTATE_ANIMS[] = {ANIM_AGENT_SIT_GROUND, ANIM_AGENT_SIT_GROUND_CONSTRAINED, ANIM_AGENT_STANDUP};
00051 S32 NUM_AGENT_NO_ROTATE_ANIMS = sizeof(AGENT_NO_ROTATE_ANIMS) / sizeof(LLUUID);
00052 
00053 LLUUID AGENT_STAND_ANIMS[] = {ANIM_AGENT_STAND, ANIM_AGENT_STAND_1, ANIM_AGENT_STAND_2, ANIM_AGENT_STAND_3, ANIM_AGENT_STAND_4};
00054 S32 NUM_AGENT_STAND_ANIMS = sizeof(AGENT_STAND_ANIMS) / sizeof(LLUUID);
00055 
00056 
00057 LLAnimationLibrary gAnimLibrary;
00058 
00059 //-----------------------------------------------------------------------------
00060 // LLAnimationLibrary()
00061 //-----------------------------------------------------------------------------
00062 LLAnimationLibrary::LLAnimationLibrary() :
00063         mAnimStringTable(16384)
00064 {
00065         //add animation names to animmap
00066         mAnimMap[ANIM_AGENT_AFRAID]=                    mAnimStringTable.addString("express_afraid");
00067         mAnimMap[ANIM_AGENT_AIM_BAZOOKA_R]=             mAnimStringTable.addString("aim_r_bazooka");
00068         mAnimMap[ANIM_AGENT_AIM_BOW_L]=                 mAnimStringTable.addString("aim_l_bow");
00069         mAnimMap[ANIM_AGENT_AIM_HANDGUN_R]=             mAnimStringTable.addString("aim_r_handgun");
00070         mAnimMap[ANIM_AGENT_AIM_RIFLE_R]=               mAnimStringTable.addString("aim_r_rifle");
00071         mAnimMap[ANIM_AGENT_ANGRY]=                             mAnimStringTable.addString("express_anger");
00072         mAnimMap[ANIM_AGENT_AWAY]=                              mAnimStringTable.addString("away");
00073         mAnimMap[ANIM_AGENT_BACKFLIP]=                  mAnimStringTable.addString("backflip");
00074         mAnimMap[ANIM_AGENT_BELLY_LAUGH]=               mAnimStringTable.addString("express_laugh");
00075         mAnimMap[ANIM_AGENT_BLOW_KISS]=                 mAnimStringTable.addString("blowkiss");
00076         mAnimMap[ANIM_AGENT_BORED]=                             mAnimStringTable.addString("express_bored");
00077         mAnimMap[ANIM_AGENT_BOW]=                               mAnimStringTable.addString("bow");
00078         mAnimMap[ANIM_AGENT_BRUSH]=                             mAnimStringTable.addString("brush");
00079         mAnimMap[ANIM_AGENT_BUSY]=                              mAnimStringTable.addString("busy");
00080         mAnimMap[ANIM_AGENT_CLAP]=                              mAnimStringTable.addString("clap");
00081         mAnimMap[ANIM_AGENT_COURTBOW]=                  mAnimStringTable.addString("courtbow");
00082         mAnimMap[ANIM_AGENT_CROUCH]=                    mAnimStringTable.addString("crouch");
00083         mAnimMap[ANIM_AGENT_CROUCHWALK]=                mAnimStringTable.addString("crouchwalk");
00084         mAnimMap[ANIM_AGENT_CRY]=                               mAnimStringTable.addString("express_cry");
00085         mAnimMap[ANIM_AGENT_CUSTOMIZE]=                 mAnimStringTable.addString("turn_180");
00086         mAnimMap[ANIM_AGENT_CUSTOMIZE_DONE]=    mAnimStringTable.addString("turnback_180");
00087         mAnimMap[ANIM_AGENT_DANCE1]=                    mAnimStringTable.addString("dance1");
00088         mAnimMap[ANIM_AGENT_DANCE2]=                    mAnimStringTable.addString("dance2");
00089         mAnimMap[ANIM_AGENT_DANCE3]=                    mAnimStringTable.addString("dance3");
00090         mAnimMap[ANIM_AGENT_DANCE4]=                    mAnimStringTable.addString("dance4");
00091         mAnimMap[ANIM_AGENT_DANCE5]=                    mAnimStringTable.addString("dance5");
00092         mAnimMap[ANIM_AGENT_DANCE6]=                    mAnimStringTable.addString("dance6");
00093         mAnimMap[ANIM_AGENT_DANCE7]=                    mAnimStringTable.addString("dance7");
00094         mAnimMap[ANIM_AGENT_DANCE8]=                    mAnimStringTable.addString("dance8");
00095         mAnimMap[ANIM_AGENT_DEAD]=                              mAnimStringTable.addString("dead");
00096         mAnimMap[ANIM_AGENT_DRINK]=                             mAnimStringTable.addString("drink");
00097         mAnimMap[ANIM_AGENT_EMBARRASSED]=               mAnimStringTable.addString("express_embarrased");
00098         mAnimMap[ANIM_AGENT_EXPRESS_AFRAID]=    mAnimStringTable.addString("express_afraid_emote");
00099         mAnimMap[ANIM_AGENT_EXPRESS_ANGER]=             mAnimStringTable.addString("express_anger_emote");
00100         mAnimMap[ANIM_AGENT_EXPRESS_BORED]=             mAnimStringTable.addString("express_bored_emote");
00101         mAnimMap[ANIM_AGENT_EXPRESS_CRY]=               mAnimStringTable.addString("express_cry_emote");
00102         mAnimMap[ANIM_AGENT_EXPRESS_DISDAIN]=   mAnimStringTable.addString("express_disdain");
00103         mAnimMap[ANIM_AGENT_EXPRESS_EMBARRASSED]=       mAnimStringTable.addString("express_embarrassed_emote");
00104         mAnimMap[ANIM_AGENT_EXPRESS_FROWN]=                     mAnimStringTable.addString("express_frown");
00105         mAnimMap[ANIM_AGENT_EXPRESS_KISS]=                      mAnimStringTable.addString("express_kiss");
00106         mAnimMap[ANIM_AGENT_EXPRESS_LAUGH]=                     mAnimStringTable.addString("express_laugh_emote");
00107         mAnimMap[ANIM_AGENT_EXPRESS_OPEN_MOUTH]=        mAnimStringTable.addString("express_open_mouth");
00108         mAnimMap[ANIM_AGENT_EXPRESS_REPULSED]=          mAnimStringTable.addString("express_repulsed_emote");
00109         mAnimMap[ANIM_AGENT_EXPRESS_SAD]=                       mAnimStringTable.addString("express_sad_emote");
00110         mAnimMap[ANIM_AGENT_EXPRESS_SHRUG]=                     mAnimStringTable.addString("express_shrug_emote");
00111         mAnimMap[ANIM_AGENT_EXPRESS_SMILE]=                     mAnimStringTable.addString("express_smile");
00112         mAnimMap[ANIM_AGENT_EXPRESS_SURPRISE]=          mAnimStringTable.addString("express_surprise_emote");
00113         mAnimMap[ANIM_AGENT_EXPRESS_TONGUE_OUT]=        mAnimStringTable.addString("express_tongue_out");
00114         mAnimMap[ANIM_AGENT_EXPRESS_TOOTHSMILE]=        mAnimStringTable.addString("express_toothsmile");
00115         mAnimMap[ANIM_AGENT_EXPRESS_WINK]=                      mAnimStringTable.addString("express_wink_emote");
00116         mAnimMap[ANIM_AGENT_EXPRESS_WORRY]=                     mAnimStringTable.addString("express_worry_emote");
00117         mAnimMap[ANIM_AGENT_FALLDOWN]=                          mAnimStringTable.addString("falldown");
00118         mAnimMap[ANIM_AGENT_FEMALE_WALK]=                       mAnimStringTable.addString("female_walk");
00119         mAnimMap[ANIM_AGENT_FINGER_WAG]=                        mAnimStringTable.addString("angry_fingerwag");
00120         mAnimMap[ANIM_AGENT_FIST_PUMP]=                         mAnimStringTable.addString("fist_pump");
00121         mAnimMap[ANIM_AGENT_FLY]=                                       mAnimStringTable.addString("fly");
00122         mAnimMap[ANIM_AGENT_FLYSLOW]=                           mAnimStringTable.addString("flyslow");
00123         mAnimMap[ANIM_AGENT_HELLO]=                                     mAnimStringTable.addString("hello");
00124         mAnimMap[ANIM_AGENT_HOLD_BAZOOKA_R]=            mAnimStringTable.addString("hold_r_bazooka");
00125         mAnimMap[ANIM_AGENT_HOLD_BOW_L]=                        mAnimStringTable.addString("hold_l_bow");
00126         mAnimMap[ANIM_AGENT_HOLD_HANDGUN_R]=            mAnimStringTable.addString("hold_r_handgun");
00127         mAnimMap[ANIM_AGENT_HOLD_RIFLE_R]=                      mAnimStringTable.addString("hold_r_rifle");
00128         mAnimMap[ANIM_AGENT_HOLD_THROW_R]=                      mAnimStringTable.addString("hold_throw_r");
00129         mAnimMap[ANIM_AGENT_HOVER]=                                     mAnimStringTable.addString("hover");
00130         mAnimMap[ANIM_AGENT_HOVER_DOWN]=                        mAnimStringTable.addString("hover_down");
00131         mAnimMap[ANIM_AGENT_HOVER_UP]=                          mAnimStringTable.addString("hover_up");
00132         mAnimMap[ANIM_AGENT_IMPATIENT]=                         mAnimStringTable.addString("impatient");
00133         mAnimMap[ANIM_AGENT_JUMP]=                                      mAnimStringTable.addString("jump");
00134         mAnimMap[ANIM_AGENT_JUMP_FOR_JOY]=                      mAnimStringTable.addString("jumpforjoy");
00135         mAnimMap[ANIM_AGENT_KISS_MY_BUTT]=                      mAnimStringTable.addString("kissmybutt");
00136         mAnimMap[ANIM_AGENT_LAND]=                                      mAnimStringTable.addString("land");
00137         mAnimMap[ANIM_AGENT_LAUGH_SHORT]=                       mAnimStringTable.addString("laugh_short");
00138         mAnimMap[ANIM_AGENT_MEDIUM_LAND]=                       mAnimStringTable.addString("soft_land");
00139         mAnimMap[ANIM_AGENT_MOTORCYCLE_SIT]=            mAnimStringTable.addString("motorcycle_sit");
00140         mAnimMap[ANIM_AGENT_MUSCLE_BEACH]=                      mAnimStringTable.addString("musclebeach");
00141         mAnimMap[ANIM_AGENT_NO]=                                        mAnimStringTable.addString("no_head");
00142         mAnimMap[ANIM_AGENT_NO_UNHAPPY]=                        mAnimStringTable.addString("no_unhappy");
00143         mAnimMap[ANIM_AGENT_NYAH_NYAH]=                         mAnimStringTable.addString("nyanya");
00144         mAnimMap[ANIM_AGENT_ONETWO_PUNCH]=                      mAnimStringTable.addString("punch_onetwo");
00145         mAnimMap[ANIM_AGENT_PEACE]=                                     mAnimStringTable.addString("peace");
00146         mAnimMap[ANIM_AGENT_POINT_ME]=                          mAnimStringTable.addString("point_me");
00147         mAnimMap[ANIM_AGENT_POINT_YOU]=                         mAnimStringTable.addString("point_you");
00148         mAnimMap[ANIM_AGENT_PRE_JUMP]=                          mAnimStringTable.addString("prejump");
00149         mAnimMap[ANIM_AGENT_PUNCH_LEFT]=                        mAnimStringTable.addString("punch_l");
00150         mAnimMap[ANIM_AGENT_PUNCH_RIGHT]=                       mAnimStringTable.addString("punch_r");
00151         mAnimMap[ANIM_AGENT_REPULSED]=                          mAnimStringTable.addString("express_repulsed");
00152         mAnimMap[ANIM_AGENT_ROUNDHOUSE_KICK]=           mAnimStringTable.addString("kick_roundhouse_r");
00153         mAnimMap[ANIM_AGENT_RPS_COUNTDOWN]=                     mAnimStringTable.addString("rps_countdown");
00154         mAnimMap[ANIM_AGENT_RPS_PAPER]=                         mAnimStringTable.addString("rps_paper");
00155         mAnimMap[ANIM_AGENT_RPS_ROCK]=                          mAnimStringTable.addString("rps_rock");
00156         mAnimMap[ANIM_AGENT_RPS_SCISSORS]=                      mAnimStringTable.addString("rps_scissors");
00157         mAnimMap[ANIM_AGENT_RUN]=                                       mAnimStringTable.addString("run");
00158         mAnimMap[ANIM_AGENT_SAD]=                                       mAnimStringTable.addString("express_sad");
00159         mAnimMap[ANIM_AGENT_SALUTE]=                            mAnimStringTable.addString("salute");
00160         mAnimMap[ANIM_AGENT_SHOOT_BOW_L]=                       mAnimStringTable.addString("shoot_l_bow");
00161         mAnimMap[ANIM_AGENT_SHOUT]=                                     mAnimStringTable.addString("shout");
00162         mAnimMap[ANIM_AGENT_SHRUG]=                                     mAnimStringTable.addString("express_shrug");
00163         mAnimMap[ANIM_AGENT_SIT]=                                       mAnimStringTable.addString("sit");
00164         mAnimMap[ANIM_AGENT_SIT_FEMALE]=                        mAnimStringTable.addString("sit_female");
00165         mAnimMap[ANIM_AGENT_SIT_GROUND]=                        mAnimStringTable.addString("sit_ground");
00166         mAnimMap[ANIM_AGENT_SIT_GROUND_CONSTRAINED]=    mAnimStringTable.addString("sit_ground_constrained");
00167         mAnimMap[ANIM_AGENT_SIT_GENERIC]=                       mAnimStringTable.addString("sit_generic");
00168         mAnimMap[ANIM_AGENT_SIT_TO_STAND]=                      mAnimStringTable.addString("sit_to_stand");
00169         mAnimMap[ANIM_AGENT_SLEEP]=                                     mAnimStringTable.addString("sleep");
00170         mAnimMap[ANIM_AGENT_SMOKE_IDLE]=                        mAnimStringTable.addString("smoke_idle");
00171         mAnimMap[ANIM_AGENT_SMOKE_INHALE]=                      mAnimStringTable.addString("smoke_inhale");
00172         mAnimMap[ANIM_AGENT_SMOKE_THROW_DOWN]=          mAnimStringTable.addString("smoke_throw_down");
00173         mAnimMap[ANIM_AGENT_SNAPSHOT]=                          mAnimStringTable.addString("snapshot");
00174         mAnimMap[ANIM_AGENT_STAND]=                                     mAnimStringTable.addString("stand");
00175         mAnimMap[ANIM_AGENT_STANDUP]=                           mAnimStringTable.addString("standup");
00176         mAnimMap[ANIM_AGENT_STAND_1]=                           mAnimStringTable.addString("stand_1");
00177         mAnimMap[ANIM_AGENT_STAND_2]=                           mAnimStringTable.addString("stand_2");
00178         mAnimMap[ANIM_AGENT_STAND_3]=                           mAnimStringTable.addString("stand_3");
00179         mAnimMap[ANIM_AGENT_STAND_4]=                           mAnimStringTable.addString("stand_4");
00180         mAnimMap[ANIM_AGENT_STRETCH]=                           mAnimStringTable.addString("stretch");
00181         mAnimMap[ANIM_AGENT_STRIDE]=                            mAnimStringTable.addString("stride");
00182         mAnimMap[ANIM_AGENT_SURF]=                                      mAnimStringTable.addString("surf");
00183         mAnimMap[ANIM_AGENT_SURPRISE]=                          mAnimStringTable.addString("express_surprise");
00184         mAnimMap[ANIM_AGENT_SWORD_STRIKE]=                      mAnimStringTable.addString("sword_strike_r");
00185         mAnimMap[ANIM_AGENT_TALK]=                                      mAnimStringTable.addString("talk");
00186         mAnimMap[ANIM_AGENT_TANTRUM]=                           mAnimStringTable.addString("angry_tantrum");
00187         mAnimMap[ANIM_AGENT_THROW_R]=                           mAnimStringTable.addString("throw_r");
00188         mAnimMap[ANIM_AGENT_TRYON_SHIRT]=                       mAnimStringTable.addString("tryon_shirt");
00189         mAnimMap[ANIM_AGENT_TURNLEFT]=                          mAnimStringTable.addString("turnleft");
00190         mAnimMap[ANIM_AGENT_TURNRIGHT]=                         mAnimStringTable.addString("turnright");
00191         mAnimMap[ANIM_AGENT_TYPE]=                                      mAnimStringTable.addString("type");
00192         mAnimMap[ANIM_AGENT_WALK]=                                      mAnimStringTable.addString("walk");
00193         mAnimMap[ANIM_AGENT_WHISPER]=                           mAnimStringTable.addString("whisper");
00194         mAnimMap[ANIM_AGENT_WHISTLE]=                           mAnimStringTable.addString("whistle");
00195         mAnimMap[ANIM_AGENT_WINK]=                                      mAnimStringTable.addString("express_wink");
00196         mAnimMap[ANIM_AGENT_WINK_HOLLYWOOD]=            mAnimStringTable.addString("wink_hollywood");
00197         mAnimMap[ANIM_AGENT_WORRY]=                                     mAnimStringTable.addString("express_worry");
00198         mAnimMap[ANIM_AGENT_YES]=                                       mAnimStringTable.addString("yes_head");
00199         mAnimMap[ANIM_AGENT_YES_HAPPY]=                         mAnimStringTable.addString("yes_happy");
00200         mAnimMap[ANIM_AGENT_YOGA_FLOAT]=                        mAnimStringTable.addString("yoga_float");
00201 }
00202         
00203 //-----------------------------------------------------------------------------
00204 // ~LLAnimationLibrary()
00205 //-----------------------------------------------------------------------------
00206 LLAnimationLibrary::~LLAnimationLibrary()
00207 {
00208 }
00209 
00210 //-----------------------------------------------------------------------------
00211 // Return the text name of an animation state
00212 //-----------------------------------------------------------------------------
00213 const char *LLAnimationLibrary::animStateToString( const LLUUID& state )
00214 {
00215         if (state.isNull())
00216         {
00217                 return NULL;
00218         }
00219         if (mAnimMap.count(state))
00220         {
00221                 return mAnimMap[state];
00222         }
00223 
00224         return NULL;
00225 }
00226 
00227 
00228 //-----------------------------------------------------------------------------
00229 // Return the animation state for a given name
00230 //-----------------------------------------------------------------------------
00231 LLUUID LLAnimationLibrary::stringToAnimState( const char *name, BOOL allow_ids )
00232 {
00233         LLString lower_case_name(name);
00234         LLString::toLower(lower_case_name);
00235 
00236         char *true_name = mAnimStringTable.checkString(lower_case_name.c_str());
00237 
00238         LLUUID id;
00239         id.setNull();
00240 
00241         if (true_name)
00242         {
00243                 for (anim_map_t::iterator iter = mAnimMap.begin();
00244                          iter != mAnimMap.end(); iter++)
00245                 {
00246                         if (iter->second == true_name)
00247                         {
00248                                 id = iter->first;
00249                                 break;
00250                         }
00251                 }
00252         }
00253         else if (allow_ids)
00254         {
00255                 // try to convert string to LLUUID
00256                 id.set(name, FALSE);
00257         }
00258 
00259         return id;
00260 }
00261 
00262 // Animation states that the user can trigger as part of a gesture
00263 const LLAnimStateEntry gUserAnimStates[] = {
00264         LLAnimStateEntry("Afraid",                      "express_afraid",               ANIM_AGENT_AFRAID),
00265         LLAnimStateEntry("Angry",                       "express_anger",                ANIM_AGENT_ANGRY),
00266         LLAnimStateEntry("Away",                        "away",                                 ANIM_AGENT_AWAY),
00267         LLAnimStateEntry("Backflip",            "backflip",                             ANIM_AGENT_BACKFLIP),
00268         LLAnimStateEntry("Belly Laugh",         "express_laugh",                ANIM_AGENT_BELLY_LAUGH),
00269         LLAnimStateEntry("BigSmile",            "express_toothsmile",   ANIM_AGENT_EXPRESS_TOOTHSMILE),
00270         LLAnimStateEntry("Blow Kiss",           "blowkiss",                             ANIM_AGENT_BLOW_KISS),
00271         LLAnimStateEntry("Bored",                       "express_bored",                ANIM_AGENT_BORED),
00272         LLAnimStateEntry("Bow",                         "bow",                                  ANIM_AGENT_BOW),
00273         LLAnimStateEntry("Clap",                        "clap",                                 ANIM_AGENT_CLAP),
00274         LLAnimStateEntry("Court Bow",           "courtbow",                             ANIM_AGENT_COURTBOW),
00275         LLAnimStateEntry("Cry",                         "express_cry",                  ANIM_AGENT_CRY),
00276         LLAnimStateEntry("Dance 1",                     "dance1",                               ANIM_AGENT_DANCE1),
00277         LLAnimStateEntry("Dance 2",                     "dance2",                               ANIM_AGENT_DANCE2),
00278         LLAnimStateEntry("Dance 3",                     "dance3",                               ANIM_AGENT_DANCE3),
00279         LLAnimStateEntry("Dance 4",                     "dance4",                               ANIM_AGENT_DANCE4),
00280         LLAnimStateEntry("Dance 5",                     "dance5",                               ANIM_AGENT_DANCE5),
00281         LLAnimStateEntry("Dance 6",                     "dance6",                               ANIM_AGENT_DANCE6),
00282         LLAnimStateEntry("Dance 7",                     "dance7",                               ANIM_AGENT_DANCE7),
00283         LLAnimStateEntry("Dance 8",                     "dance8",                               ANIM_AGENT_DANCE8),
00284         LLAnimStateEntry("Disdain",                     "express_disdain",              ANIM_AGENT_EXPRESS_DISDAIN),
00285         LLAnimStateEntry("Drink",                       "drink",                                ANIM_AGENT_DRINK),
00286         LLAnimStateEntry("Embarrassed",         "express_embarrased",   ANIM_AGENT_EMBARRASSED),
00287         LLAnimStateEntry("Finger Wag",          "angry_fingerwag",              ANIM_AGENT_FINGER_WAG),
00288         LLAnimStateEntry("Fist Pump",           "fist_pump",                    ANIM_AGENT_FIST_PUMP),
00289         LLAnimStateEntry("Floating Yoga",       "yoga_float",                   ANIM_AGENT_YOGA_FLOAT),
00290         LLAnimStateEntry("Frown",                       "express_frown",                ANIM_AGENT_EXPRESS_FROWN),
00291         LLAnimStateEntry("Impatient",           "impatient",                    ANIM_AGENT_IMPATIENT),
00292         LLAnimStateEntry("Jump For Joy",        "jumpforjoy",                   ANIM_AGENT_JUMP_FOR_JOY),
00293         LLAnimStateEntry("Kiss My Butt",        "kissmybutt",                   ANIM_AGENT_KISS_MY_BUTT),
00294         LLAnimStateEntry("Kiss",                        "express_kiss",                 ANIM_AGENT_EXPRESS_KISS),
00295         LLAnimStateEntry("Laugh",                       "laugh_short",                  ANIM_AGENT_LAUGH_SHORT),
00296         LLAnimStateEntry("Muscle Beach",        "musclebeach",                  ANIM_AGENT_MUSCLE_BEACH),
00297         LLAnimStateEntry("No (Unhappy)",        "no_unhappy",                   ANIM_AGENT_NO_UNHAPPY),
00298         LLAnimStateEntry("No",                          "no_head",                              ANIM_AGENT_NO),
00299         LLAnimStateEntry("Nya-nya-nya",         "nyanya",                               ANIM_AGENT_NYAH_NYAH),
00300         LLAnimStateEntry("One-Two Punch",       "punch_onetwo",                 ANIM_AGENT_ONETWO_PUNCH),
00301         LLAnimStateEntry("Open Mouth",          "express_open_mouth",   ANIM_AGENT_EXPRESS_OPEN_MOUTH),
00302         LLAnimStateEntry("Peace",                       "peace",                                ANIM_AGENT_PEACE),
00303         LLAnimStateEntry("Point at Other",      "point_you",                    ANIM_AGENT_POINT_YOU),
00304         LLAnimStateEntry("Point at Self",       "point_me",                             ANIM_AGENT_POINT_ME),
00305         LLAnimStateEntry("Punch Left",          "punch_l",                              ANIM_AGENT_PUNCH_LEFT),
00306         LLAnimStateEntry("Punch Right",         "punch_r",                              ANIM_AGENT_PUNCH_RIGHT),
00307         LLAnimStateEntry("RPS count",           "rps_countdown",                ANIM_AGENT_RPS_COUNTDOWN),
00308         LLAnimStateEntry("RPS paper",           "rps_paper",                    ANIM_AGENT_RPS_PAPER),
00309         LLAnimStateEntry("RPS rock",            "rps_rock",                             ANIM_AGENT_RPS_ROCK),
00310         LLAnimStateEntry("RPS scissors",        "rps_scissors",                 ANIM_AGENT_RPS_SCISSORS),
00311         LLAnimStateEntry("Repulsed",            "express_repulsed",             ANIM_AGENT_EXPRESS_REPULSED),
00312         LLAnimStateEntry("Roundhouse Kick",     "kick_roundhouse_r",    ANIM_AGENT_ROUNDHOUSE_KICK),
00313         LLAnimStateEntry("Sad",                         "express_sad",                  ANIM_AGENT_SAD),
00314         LLAnimStateEntry("Salute",                      "salute",                               ANIM_AGENT_SALUTE),
00315         LLAnimStateEntry("Shout",                       "shout",                                ANIM_AGENT_SHOUT),
00316         LLAnimStateEntry("Shrug",                       "express_shrug",                ANIM_AGENT_SHRUG),
00317         LLAnimStateEntry("Smile",                       "express_smile",                ANIM_AGENT_EXPRESS_SMILE),
00318         LLAnimStateEntry("Smoke Idle",          "smoke_idle",                   ANIM_AGENT_SMOKE_IDLE),
00319         LLAnimStateEntry("Smoke Inhale",        "smoke_inhale",                 ANIM_AGENT_SMOKE_INHALE),
00320         LLAnimStateEntry("Smoke Throw Down","smoke_throw_down",         ANIM_AGENT_SMOKE_THROW_DOWN),
00321         LLAnimStateEntry("Surprise",            "express_surprise",             ANIM_AGENT_SURPRISE),
00322         LLAnimStateEntry("Sword Strike",        "sword_strike_r",               ANIM_AGENT_SWORD_STRIKE),
00323         LLAnimStateEntry("Tantrum",                     "angry_tantrum",                ANIM_AGENT_TANTRUM),
00324         LLAnimStateEntry("TongueOut",           "express_tongue_out",   ANIM_AGENT_EXPRESS_TONGUE_OUT),
00325         LLAnimStateEntry("Wave",                        "hello",                                ANIM_AGENT_HELLO),
00326         LLAnimStateEntry("Whisper",                     "whisper",                              ANIM_AGENT_WHISPER),
00327         LLAnimStateEntry("Whistle",                     "whistle",                              ANIM_AGENT_WHISTLE),
00328         LLAnimStateEntry("Wink",                        "express_wink",                 ANIM_AGENT_WINK),
00329         LLAnimStateEntry("Wink (Hollywood)","wink_hollywood",           ANIM_AGENT_WINK_HOLLYWOOD),
00330         LLAnimStateEntry("Worry",                       "express_worry",                ANIM_AGENT_EXPRESS_WORRY),
00331         LLAnimStateEntry("Yes (Happy)",         "yes_happy",                    ANIM_AGENT_YES_HAPPY),
00332         LLAnimStateEntry("Yes",                         "yes_head",                             ANIM_AGENT_YES),
00333 };
00334 
00335 const S32 gUserAnimStatesCount = sizeof(gUserAnimStates) / sizeof(gUserAnimStates[0]);
00336 
00337 
00338 
00339 // End
00340 

Generated on Thu Jul 1 06:08:18 2010 for Second Life Viewer by  doxygen 1.4.7