Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[C++ & Python] Érzelmek bővítése
#1
Thumbs Up 
Sziasztok fórumozók!  Smile

Ezt kiteszem, mert ezt nem nehéz megcsinálni, de nem láttam erről leírást.
Sokak fejében biztos megfordult, jó lenne több érzelem berakása. Itt egy lehetőség arra, hogyan bővítsük ezt.

Ez a leírás jó más érzelmek pótlására is, csak tánchoz írtam.  ;D



Indító forrás:

Gamelib/ActorInstanceMotion.cpp

Ezt a tömböt kell kiegészíteni.
Code:
        case CRaceMotionData::NAME_DANCE_1:
        case CRaceMotionData::NAME_DANCE_2:    
        case CRaceMotionData::NAME_DANCE_3:
        case CRaceMotionData::NAME_DANCE_4:
        case CRaceMotionData::NAME_DANCE_5:
        case CRaceMotionData::NAME_DANCE_6:

Kiegészíted ezzel:
Code:
        case CRaceMotionData::NAME_DANCE_7:


Gamelib/RaceMotionData.cpp

Ezt a tömböt kiegészíted:
Code:
        case NAME_DANCE_1:
        case NAME_DANCE_2:
        case NAME_DANCE_3:
        case NAME_DANCE_4:
        case NAME_DANCE_5:
        case NAME_DANCE_6:

Kiegészíted:
Code:
        case NAME_DANCE_7:


Gamelib/RaceMotionData.h

Ezt egészíted ki:
Code:
            NAME_DANCE_1,
            NAME_DANCE_2,
            NAME_DANCE_3,
            NAME_DANCE_4,
            NAME_DANCE_5,
            NAME_DANCE_6,        // °­ł˛˝şĹ¸ŔĎ

Egy ilyen sorral:
Code:
            NAME_DANCE_7,

########

Userinterface/PythonCharacterModule.cpp

Ehhez a tömbhöz:
Code:
    PyModule_AddIntConstant(poModule, "MOTION_DANCE_1",                        CRaceMotionData::NAME_DANCE_1);
    PyModule_AddIntConstant(poModule, "MOTION_DANCE_2",                        CRaceMotionData::NAME_DANCE_2);

    PyModule_AddIntConstant(poModule, "MOTION_DANCE_3",                        CRaceMotionData::NAME_DANCE_3);
    PyModule_AddIntConstant(poModule, "MOTION_DANCE_4",                        CRaceMotionData::NAME_DANCE_4);
    PyModule_AddIntConstant(poModule, "MOTION_DANCE_5",                        CRaceMotionData::NAME_DANCE_5);
    PyModule_AddIntConstant(poModule, "MOTION_DANCE_6",                        CRaceMotionData::NAME_DANCE_6);


Újabb sort adsz:
Code:
    PyModule_AddIntConstant(poModule, "MOTION_DANCE_7",                        CRaceMotionData::NAME_DANCE_7);



Userinterface/PythonNetworkStreamCommand.cpp

Rákeresel erre:
Code:
            s_emotionDict["dance6"] = CRaceMotionData::NAME_DANCE_6;


Aláírod ezt:
Code:
            s_emotionDict["dance7"] = CRaceMotionData::NAME_DANCE_7;


Userinterface/PythonPlayerModule.cpp

Ezt a tömböt kiegészíted:
Code:
    EMOTION_DANCE_1,
    EMOTION_DANCE_2,
    EMOTION_DANCE_3,
    EMOTION_DANCE_4,
    EMOTION_DANCE_5,
    EMOTION_DANCE_6,        // °­ł˛˝şĹ¸ŔĎ


Ezzel a sorral:
Code:
    EMOTION_DANCE_7,


Ugyan itt rákeresel erre:
Code:
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_1",        EMOTION_DANCE_1);
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_2",        EMOTION_DANCE_2);
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_3",        EMOTION_DANCE_3);
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_4",        EMOTION_DANCE_4);
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_5",        EMOTION_DANCE_5);
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_6",        EMOTION_DANCE_6);                // PSY °­ł˛˝şĹ¸ŔĎ


Alá írsz egy ilyet:
Code:
    PyModule_AddIntConstant(poModule, "EMOTION_DANCE_7",        EMOTION_DANCE_7);


################################################
################################################

Game fájl forrásba:

cmd.cpp fájlt megnyitod!

Megkeresed ezt a listát:
Code:
    // DANCE
    { "dance1",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },
    { "dance2",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },
    { "dance3",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },
    { "dance4",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },
    { "dance5",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },
    { "dance6",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },
    // END_OF_DANCE

Itt kell bővítened, hogy a GM parancsként is lejátszódjon az animáció. pl.: /dance6

Ezzel bővíted:
Code:
    { "dance7",        do_emotion,        0,            POS_FIGHTING,    GM_PLAYER    },

/////////////////////////////////////////////////////////////////////////////////////

cmd_emotion.cpp

Ezt a tömböt egészíted itt is ki:
Code:
    // DANCE
    { "´í˝ş1",    "dance1",    0,                        1.0f },
    { "´í˝ş2",    "dance2",    0,                        1.0f },
    { "´í˝ş3",    "dance3",    0,                        1.0f },
    { "´í˝ş4",    "dance4",    0,                        1.0f },
    { "´í˝ş5",    "dance5",    0,                        1.0f },
    { "´í˝ş6",    "dance6",    0,                        1.0f },
    // END_OF_DANCE

Pl.: Ezzel:

Code:
    { "´í˝ş7",    "dance7",    0,                        1.0f },



A forrás része itt véget is ér.  8)


--------------------------------------------------------------------------------------------------------------------

Kliens python bővítés

root.eix/epk

Emotion.py


Rákeresünk erre a sorra:

Code:
    EMOTION_DANCE_6 = 18

Aláírjuk ezt:

Code:
    EMOTION_DANCE_7 = 19

Utána rákeresünk erre:

Code:
        EMOTION_DANCE_6 :        {"name": locale.EMOTION_DANCE_6,     "command":"/dance6"},

Aláírjuk ezt:

Code:
        EMOTION_DANCE_7 :        {"name": locale.EMOTION_DANCE_7,     "command":"/dance7"},


Rákeresünk erre a sorra is:

Code:
EMOTION_DANCE_6        :    "icon/action/dance6.tga",

Aláírjuk ezt:

Code:
EMOTION_DANCE_6        :    "icon/action/dance7.tga",

Rákeresünk erre:

Code:
        chr.MOTION_DANCE_6 :            "dance_6.msa",

Alá írjuk ezt:

Code:
        chr.MOTION_DANCE_7 :            "dance_7.msa",


Kész, elmentheted!


Locale.eix/epk-t kibontod!

locale_game.txt-t megnyitod Notepad++-al

Megkeresed ezt a sort:

Code:
EMOTION_DANCE_6

Aláírod ezt a sort:

Code:
EMOTION_DANCE_7    Tánc 7


Változtatni lehet az érzelmek fülön, hogy több helyünk legyen!
Köszönet Danesz-nek, hogy kipróbálta a leírást! Smile


uiscript/characterwindow.py

Így nézzen ki (részlet):
Code:
{     "name" : "Emoticon_Page",     "type" : "window",     "style" : ("attach",),     "x" : 0,     "y" : 24,     "width" : 250,     "height" : 304,     "children" :     (      ## ±âş» ľ×ĽÇ Á¦¸ń      { "name":"Action_Bar", "type":"horizontalbar", "x":12, "y":11, "width":223, },      { "name":"Action_Bar_Text", "type":"text", "x":15, "y":13, "text":uiScriptLocale.CHARACTER_NORMAL_ACTION },      ## Basis Action Slot      {       "name" : "SoloEmotionSlot",       "type" : "grid_table",       "x" : 30,       "y" : 33,       "horizontal_align" : "center",       "start_index" : 1,       "x_count" : 6,       "y_count" : 5,       "x_step" : 32,       "y_step" : 32,       "x_blank" : 0,       "y_blank" : 0,       "image" : ICON_SLOT_FILE,      },      ## »óČŁ ľ×ĽÇ Á¦¸ń      { "name":"Reaction_Bar", "type":"horizontalbar", "x":12, "y":8+200, "width":223, },      { "name":"Reaction_Bar_Text", "type":"text", "x":15, "y":10+200, "text":uiScriptLocale.CHARACTER_MUTUAL_ACTION },      ## Reaction Slot      {       "name" : "DualEmotionSlot",       "type" : "grid_table",       "x" : 30,       "y" : 230,       "start_index" : 51,       "x_count" : 6,       "y_count" : 1,       "x_step" : 32,       "y_step" : 32,       "x_blank" : 0,       "y_blank" : 0,       "image" : ICON_SLOT_FILE,      },     ),    },



Végeredmény:
[Image: yCTuaab.jpg]




Ennyi lenne! Big Grin


Üdv, Pisti95
[Image: 1453876818-b8928becdb9a3058b7c9ff22ccc5caf6.jpeg]
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)