Эффект к НПЦ??

VGA88

Свой человек
Участник
Сообщения
68
Розыгрыши
0
Репутация
-29
Реакции
5
Баллы
560
Запрещено публиковать исходный код без BB-кода — CODE
Добрый день! Как установить эффект для НПЦ например для гейткиппера
Нашел методом перебора такой эффект в lineageeffect.u по такому пути LineageEffect.npc_statue_crystal_earth
Выглядит так
На фото он прикреплен к дуал мечам к правому мечу

Код:
0    11447    1    1    6    1    0    SGERfjs_fafurion_wp.fafurion_shaper_m00    SGERfjs_fafurion_wp.fafurion_shaper_m00                    SGERfjs_fafurion_wp.fafurion_icon.fafurion_dual_dagger    SGERfjs_fafurion_wp.fafurion_icon.fafurion_dual_dagger    SGERfjs_fafurion_wp.fafurion_icon.fafurion_dual_dagger            -1    1300    47    0    0    14    3    2    SGERfjs_fafurion_wp.fafurion_shaper_m00    SGERfjs_fafurion_wp.fafurion_shaper_m00    2                4    ItemSound.public_sword_shing_8    ItemSound.sword_great_4    ItemSound.sword_mid_2    ItemSound.public_sword_shing_4        ItemSound.itemequip_dualsword        10    361    137    8    5    8    0    0    0    0    325    0    1    1    1000    0    1    0    LineageEffect.npc_statue_crystal_earth    LineageEffect.bl_t    1.00000000    0.00000000    0.00000000    1.00000000    0.00000000    0.00000000    1.00000000    1.00000000    1.00000000    1.00000000            2.09999990    1.39999998    1.39999998    2.09999990    1.39999998    1.39999998    9.50000000    -0.50000000    0.00000000    9.50000000    -0.50000000    0.00000000    -1    -1    -1    -1
Сделал это так как нету программы для просмотра эффектов и пришлось вписывать к каждому мечу эффекты которые нашел на каком то форуме уже не помню.
Этот эффект не пропадает, тоесть зациклен в отличие от некоторых которые включаются только когда одеваешь пушку, и исчезают по истечении времени.

Пробовал прикрепить к НПЦ типа таким образом

Код:
36657    LineageNPC.e_smith_master_MDwarf    LineageNPCs.e_smith_master_MDwarf_m00    4    LineageNPCsTex.e_smith_master_MDwarf_m00_t00_b00    LineageNPCsTex.e_smith_master_MDwarf_m00_t00_b01    LineageNPCsTex.e_smith_master_MDwarf_m00_t00_f    LineageNPCsTex.e_smith_master_MDwarf_m00_t00_h        0            2    4416    18                                                                                                                    1.20000005    0        3    ItemSound.fist_1    ItemSound.fist_2    ItemSound.fist_3    5    ItemSound.armor_leather_1    ItemSound.armor_leather_4    ItemSound.armor_leather_6    ItemSound.armor_leather_7    ItemSound.armor_leather_8    3    ChrSound.MNpc_Old_Dmg_1    ChrSound.MNpc_Old_Dmg_2    ChrSound.MNpc_Old_Dmg_3    0            1    0                    LineageEffect.npc_statue_crystal_earth    0    50.00000000    250.00000000    70.00000000    1    0

Где вместо LineageEffect.p_u002_a вписал этот эффект LineageEffect.npc_statue_crystal_earth, но не пашет. Чё делать, у кого какие предложения. Может какой софт надо для вписания его или извлечения из lineageEffect.u
 

Вложения

  • in-1.jpg
    in-1.jpg
    134 КБ · Просмотры: 59
Последнее редактирование модератором:

Откуда стянул данный эффект?
 
Это делается не в датнике, а в классе НПСа.
C-подобный:
class Dragon_centurion_100p extends LineagePawn;

var Emitter    Effect0;


var    int        CurType;
var int        OldType;

simulated function Destroyed()
{
    super.Destroyed();
    ClearL2Game();
}

simulated event ClearL2Game()
{
    if(Effect0 != None)
    {
        Effect0.NDestroy();
        Effect0 = None;
    }
    

}

simulated event AnimBegin(name SequenceName)
{
    if(SequenceName == 'atkwait' || SequenceName == 'wait' || SequenceName == 'spwait01' || SequenceName == 'deathwait' || SequenceName == 'walk' || SequenceName =='run' || SequenceName == 'atk01' || SequenceName == 'atk02' || SequenceName == 'spatk01' || SequenceName == 'spatk02' || SequenceName == 'spatk03'|| SequenceName == 'death')
        CurType = 0;
    else if(SequenceName == 'deathwaita')
        CurType = 1;
    else
        CurType = -1;
}

simulated function Tick(float DeltaTime)
{
    if(OldType != CurType)
    {
        ClearL2Game();
        
        if(CurType == 0)
        {
            Effect0 = Spawn(class'LineageEffect.d_redpar02_deco', Self, '', Location, Rotation);
            if(Effect0 != None)
            {
                
                AttachToBone(Effect0, 'bip01 spine1');
                Effect0.SetRelativeLocation(vect(0,0,0));
                //Effect0.SetRelativeRotation(rot(0,49152,16384));
                Effect0.SetSizeScale(2.7);
            }

        }
        else
        {
            Effect0.NDestroy();
            Effect0 = None;

        }
        
        OldType = CurType;
    }
}

defaultproperties
{
     OldType=-1
     GroundMaxSpeed=210.000000
     GroundMinSpeed=55.000000
     bSpineRotation=True
     ControllerClass=Class'LineageMonster.HerdMonster'
     CollisionRadius=20.000000
     CollisionHeight=33.000000
}
 
Это делается не в датнике, а в классе НПСа.
C-подобный:
class Dragon_centurion_100p extends LineagePawn;

var Emitter    Effect0;


var    int        CurType;
var int        OldType;

simulated function Destroyed()
{
    super.Destroyed();
    ClearL2Game();
}

simulated event ClearL2Game()
{
    if(Effect0 != None)
    {
        Effect0.NDestroy();
        Effect0 = None;
    }
  

}

simulated event AnimBegin(name SequenceName)
{
    if(SequenceName == 'atkwait' || SequenceName == 'wait' || SequenceName == 'spwait01' || SequenceName == 'deathwait' || SequenceName == 'walk' || SequenceName =='run' || SequenceName == 'atk01' || SequenceName == 'atk02' || SequenceName == 'spatk01' || SequenceName == 'spatk02' || SequenceName == 'spatk03'|| SequenceName == 'death')
        CurType = 0;
    else if(SequenceName == 'deathwaita')
        CurType = 1;
    else
        CurType = -1;
}

simulated function Tick(float DeltaTime)
{
    if(OldType != CurType)
    {
        ClearL2Game();
      
        if(CurType == 0)
        {
            Effect0 = Spawn(class'LineageEffect.d_redpar02_deco', Self, '', Location, Rotation);
            if(Effect0 != None)
            {
              
                AttachToBone(Effect0, 'bip01 spine1');
                Effect0.SetRelativeLocation(vect(0,0,0));
                //Effect0.SetRelativeRotation(rot(0,49152,16384));
                Effect0.SetSizeScale(2.7);
            }

        }
        else
        {
            Effect0.NDestroy();
            Effect0 = None;

        }
      
        OldType = CurType;
    }
}

defaultproperties
{
     OldType=-1
     GroundMaxSpeed=210.000000
     GroundMinSpeed=55.000000
     bSpineRotation=True
     ControllerClass=Class'LineageMonster.HerdMonster'
     CollisionRadius=20.000000
     CollisionHeight=33.000000
}
Спорный вопрос )
Если еффект корректный хватает всего лишь в датнике прописать)
 
  • Ха-ха-ха
Реакции: Rolo
Откуда стянул данный эффект?
Я же писал выше, перебором на мечах. С интерлюда стандартного

Это делается не в датнике, а в классе НПСа.
C-подобный:
class Dragon_centurion_100p extends LineagePawn;

var Emitter    Effect0;


var    int        CurType;
var int        OldType;

simulated function Destroyed()
{
    super.Destroyed();
    ClearL2Game();
}

simulated event ClearL2Game()
{
    if(Effect0 != None)
    {
        Effect0.NDestroy();
        Effect0 = None;
    }
   

}

simulated event AnimBegin(name SequenceName)
{
    if(SequenceName == 'atkwait' || SequenceName == 'wait' || SequenceName == 'spwait01' || SequenceName == 'deathwait' || SequenceName == 'walk' || SequenceName =='run' || SequenceName == 'atk01' || SequenceName == 'atk02' || SequenceName == 'spatk01' || SequenceName == 'spatk02' || SequenceName == 'spatk03'|| SequenceName == 'death')
        CurType = 0;
    else if(SequenceName == 'deathwaita')
        CurType = 1;
    else
        CurType = -1;
}

simulated function Tick(float DeltaTime)
{
    if(OldType != CurType)
    {
        ClearL2Game();
       
        if(CurType == 0)
        {
            Effect0 = Spawn(class'LineageEffect.d_redpar02_deco', Self, '', Location, Rotation);
            if(Effect0 != None)
            {
               
                AttachToBone(Effect0, 'bip01 spine1');
                Effect0.SetRelativeLocation(vect(0,0,0));
                //Effect0.SetRelativeRotation(rot(0,49152,16384));
                Effect0.SetSizeScale(2.7);
            }

        }
        else
        {
            Effect0.NDestroy();
            Effect0 = None;

        }
       
        OldType = CurType;
    }
}

defaultproperties
{
     OldType=-1
     GroundMaxSpeed=210.000000
     GroundMinSpeed=55.000000
     bSpineRotation=True
     ControllerClass=Class'LineageMonster.HerdMonster'
     CollisionRadius=20.000000
     CollisionHeight=33.000000
}
А в каком файле эти классы? Это как я понимаю в датнике после ID чара первое значение?
36657 LineageNPC.e_smith_master_MDwarf ....
 
VGA88, совершенно верно, в нем. Общий пак в казанном Вами примере - LineageNPC, класс конкретного НПСа - e_smith_master_MDwarf , вот там и нужно зацепить эффект.
 
WOTgreat exporter открывал один раз, но только для просмотра. Как я понял софт достать тяжело для открытия U файлов

как то так выглядет

class e_smith_master_MDwarf extends LineagePawn;





defaultproperties
{
bFaceRotation=True
GroundSpeed=120.00
ControllerClass=Class'HerdNpc'
CollisionRadius=8.00
CollisionHeight=17.00
}
 
VGA88, та эдитор умеет.

как то так выглядет
В примере, что я выше кидал, как раз НПС, на которого вешается эффект, в многих классах там просто дефолтные настройки, но никто не мешает добавить и эффект. :)
 

Вложения

  • LineageNpc.zip
    77,7 КБ · Просмотры: 15
Спорный вопрос )
Если еффект корректный хватает всего лишь в датнике прописать)
А например како эффект корректный есть? чтобы проверить на дат файле. Из стандартных эффектов IL.
 
VGA88, я выше вон декомпил пака кинул.
C++:
class argos_eye extends LineagePawn;



var actor  ViewEmitter;

simulated function PostBeginPlay()
{   
    local class<Emitter> tempClass;

    Super.PostBeginPlay();

    tempClass = class<Emitter>( DynamicLoadObject( "Lineageeffect.e_argos_eye", class'Class') );
    if(tempClass != None)
    {
        ViewEmitter = Spawn(tempClass,Self,'',Location,Rotation);
        ViewEmitter.SetPhysics(PHYS_Trailer);
        ViewEmitter.bTrailerSameRotation=false;
        ViewEmitter.bTrailerPrePivot=true;
        ViewEmitter.SetBase( Self,vect(0,0,1));
    }       
}

simulated event Detach(Actor Other )
{
    if(ViewEmitter == Other)
        ViewEmitter = None;
    Super.Detach(Other);
}


simulated function Destroyed()
{
    Super.Destroyed();

    if(ViewEmitter != None)
    {
        ViewEmitter.NDestroy();
        ViewEmitter = None;
    }
}

defaultproperties
{
     GroundSpeed=120.000000
     ControllerClass=Class'LineageNpc.HerdNpc'
     CollisionRadius=205.000000
     CollisionHeight=307.000000
}
 
VGA88, та эдитор умеет.


В примере, что я выше кидал, как раз НПС, на которого вешается эффект, в многих классах там просто дефолтные настройки, но никто не мешает добавить и эффект. :)
Есть ссылка на TA editor?
 
  • Ха-ха-ха
Реакции: Rolo
VGA88, "та" - это не часть названия, это мол "ой, да это умеет вот он, не нужен там wot". )) Я свой использую, поищите на форуме, по-моему, здесь таких много было.
 

    VGA88

    Баллов: 5
    отлично
Назад
Сверху Снизу