Как поменять модель entity (holiday_gift)

Тема в разделе "Программирование / Скриптинг", создана пользователем pokypka20, 10 авг 2014.

  1. pokypka20

    pokypka20

    Сообщения:
    250
    Симпатии:
    30
    Подскажите как изменить модель подарка?

    PHP:
    new entity CreateEntityByName("holiday_gift");
    DispatchKeyValue(entity"model"Gift_model);

    // Пробовал так не работает, а вот так

    new entity CreateEntityByName("prop_dynamic");
    DispatchKeyValue(entity"model"Gift_model);

    // Работает, но подарок нельзя поднять он как предмет.
     
  2. Серый™

    Серый™ CS:S Server

    Сообщения:
    2.569
    Симпатии:
    1.152
    pokypka20, вместо этого Gift_model пишешь свой путь до модели.
     
  3. pokypka20

    pokypka20

    Сообщения:
    250
    Симпатии:
    30
    Лень было в первом посту написать но Gift_model и есть модель, #define Gift_Model "Путь"
     
  4. Primo

    Primo Где мои манеры

    Сообщения:
    1.192
    Симпатии:
    310
    SetEntityModel(entity, model)?
     
  5. Серый™

    Серый™ CS:S Server

    Сообщения:
    2.569
    Симпатии:
    1.152
    pokypka20, вот код из плагина подарков рико...
    PHP:
    SpawnGift(Float:vOrigin[3], index)
    {
        new 
    iEntity CreateEntityByName("prop_dynamic_override");
        
    decl String:sTargetName[32], String:tmp[70];
        
    IntToString(indexsTargetNamesizeof(sTargetName));
        
    DispatchKeyValueVector(iEntity"origin"vOrigin);
        
    DispatchKeyValue(iEntity"solid""6");
        
    decl Float:fValueString:sValue[PLATFORM_MAX_PATH];
        
    DispatchKeyValue(iEntity"model", (GetTrieString(g_hGiftsTrie[index], "Model"sValuesizeof(sValue))) ? sValue:MODEL);

        
    DispatchKeyValue(iEntity"targetname"sTargetName);
        
    DispatchSpawn(iEntity);

        
    SetEntProp(iEntityProp_Send"m_usSolidFlags"8);
        
    SetEntProp(iEntityProp_Send"m_CollisionGroup"1);

        
    Format(tmpsizeof(tmp), "OnUser1 !self:kill::%0.2f:-1", (GetTrieValue(g_hGiftsTrie[index], "Lifetime"fValue)) ? fValue LIFETIME);
        
    SetVariantString(tmp);
        
    AcceptEntityInput(iEntity"AddOutput"); 
        
    AcceptEntityInput(iEntity"FireUser1");


        new 
    iRotating CreateEntityByName("func_rotating");
        
    DispatchKeyValueVector(iRotating"origin"vOrigin);
        
    DispatchKeyValue(iRotating"targetname"sTargetName);
        
    DispatchKeyValue(iRotating"maxspeed""180");
        
    DispatchKeyValue(iRotating"friction""0");
        
    DispatchKeyValue(iRotating"dmg""0");
        
    DispatchKeyValue(iRotating"solid""0");
        
    DispatchKeyValue(iRotating"spawnflags""64");
        
    DispatchSpawn(iRotating);

        
    SetVariantString("!activator");
        
    AcceptEntityInput(iEntity"SetParent"iRotatingiRotating);
        
    AcceptEntityInput(iRotating"Start");

        
    Call_StartForward(g_hOnCreate);
        
    Call_PushCell(iEntity);
        
    Call_Finish();

        
    SDKHook(iEntitySDKHook_StartTouchHook_GiftStartTouch);
    }

    public 
    Hook_GiftStartTouch(iEntityiClient)
    {
        if (
    iClient && iClient <= MaxClients && IsPlayerAlive(iClient))
        {
            
    decl String:sIndex[10];
            
    GetEntPropString(iEntityProp_Data"m_iName"sIndexsizeof(sIndex));
            new 
    index StringToInt(sIndex);
            
    Call_StartForward(g_hOnPickUp);
            
    Call_PushCell(g_hGiftsTrie[index]);
            
    Call_PushCell(iClient);
            
    Call_PushCell(iEntity);
            
    Call_PushCell(index);
            
    Call_Finish();
        }
    }

    public 
    Gifts_OnPickUpGift(Handle:hTrieiClientiEntityindex)
    {
        
    AcceptEntityInput(iEntity"Kill");
        
    g_iHasClientGift[iClient] = index;
        
    decl String:sValue[PLATFORM_MAX_PATH];

        new 
    Float:iVec[3];
        
    GetClientAbsOrigin(iClientFloat:iVec);
        
    EmitAmbientSound(((GetTrieString(hTrie"Sound"sValuesizeof(sValue))) ? sValue:SOUND), iVeciClientSNDLEVEL_NORMAL);

        if(
    GetTrieString(hTrie"TextToAll"sValuesizeof(sValue)))
        {
            
    EditString(sValuesizeof(sValue), iClient);
            for (new 
    1<= MaxClientsi++)
            {
                if (
    IsClientInGame(i) && != iClientPrintToChat(isValue);
            }
        }

        if(
    GetTrieString(hTrie"TextToPlayer"sValuesizeof(sValue)))
        {
            
    EditString(sValuesizeof(sValue), iClient);
            
    PrintToChat(iClientsValue);
        }
    }
     
    pokypka20 нравится это.
  6. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.998
    Симпатии:
    2.992
    2 способа:
    DispatchKeyValue(entity, "model", Gift_model);
    SetEntityModel(entity, model);

    Я хз какой лучше, быстрее и оптимальней.
     
    pokypka20 нравится это.
  7. pokypka20

    pokypka20

    Сообщения:
    250
    Симпатии:
    30
    Еще вопрос как удалить эфект после поднятия подарка?
    Тоесть игрок поднял подарок, а эфект на месте его остаётся.
    PHP:
    new effects CreateEntityByName("env_sprite");
    DispatchKeyValue(effects"rendermode""5");
    DispatchKeyValue(effects"rendercolor""0 0 255");
    DispatchKeyValue(effects"renderamt""127");
    DispatchKeyValue(effects"scale""1");
    DispatchKeyValue(effects"model""sprites/glow01.spr");
    DispatchKeyValueVector(effects"origin"position);
    DispatchKeyValue(effects"spawnflags""64");
    DispatchSpawn(effects);
     
  8. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.998
    Симпатии:
    2.992
    AcceptEntityInput(iEntity, "Kill");
     
    pokypka20 нравится это.
  9. pokypka20

    pokypka20

    Сообщения:
    250
    Симпатии:
    30
    Немного не получилось, помогите отредактировать

    PHP:
    if (test)
    {
        
    decl Float:pos[3];
        
    GetClientAbsOrigin(victimpos);

        new 
    entity CreateEntityByName("holiday_gift");
        
    DispatchKeyValueVector(entity"origin"pos);
        
    DispatchSpawn(entity);
        
    HookSingleEntityOutput(entity"OnPlayerTouch"Bonusfalse);
        
        new 
    effects CreateEntityByName("env_sprite");
        
    DispatchKeyValue(effects"rendermode""5");
        
    DispatchKeyValue(effects"rendercolor""0 0 255");
        
    DispatchKeyValue(effects"renderamt""127");
        
    DispatchKeyValue(effects"scale""1");
        
    DispatchKeyValue(effects"model""sprites/glow01.spr");
        
    DispatchKeyValueVector(effects"origin"pos);
        
    DispatchKeyValue(effects"spawnflags""64");
        
    DispatchSpawn(effects); 
                }
            }
        }
    }

    public 
    Bonus(const String:output[], calleractivatorFloat:delayany:entity// error: 092 argument
    {
        if (
    activator <= MaxClients)
        {
            if ( 
    GetRandomInt(12) == )
            {
                
    AcceptEntityInput(caller"Kill"); // убирается подарок
            
    }
            else
            {
                
    AcceptEntityInput(caller"Kill"); // убирается подарок
            
    }
            
    AcceptEntityInput(entity"Kill"); // по идеи должен убраться эфект, но этого не происходит плагин не компилится.
        
    }
    }
     
  10. R1KO

    R1KO Супер-модератор

    Сообщения:
    5.998
    Симпатии:
    2.992
    pokypka20, ты ловил он тач подарка, а эффекта нет. Попробуй привязать эффект к подарку
     
  11. Webman

    Webman Developer

    Сообщения:
    702
    Симпатии:
    182