Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Pluginde Model Yüklettme Sorunu (Ayrıntıİçerde)
#1
Berkin yaptığı plugin şu şekil
Gördüğünüz gibi benim iki tane modelim var iki modelin de iki tane dosyası daha var yani şu şekilde
os_asker1.mdl bir de os_asker1T.mdl diye bir şey buna nasıl bir çözüm getirebilirz
serverda ftpye os_asker1 diye klasör açtım gene de yüklemiyor players models plugininde yüklüyordu o şekilde olunca buyrun aşağıyada players model pluginini yayımlıyorum
Bu sorunu nasıl çözebilirim yardımlarınızı bekliyorum en kısa süre içinde, acil çünkü ha bu arada verdiği hatayı anlamışsınızdır umarım os_asker1T.mdl Not Found Smile

Code:
#include <amxmodx> #include <amxmisc>
#include <cstrike>
#include <fakemeta>
#include <fun>
#include <colorchat>


#define PLUGIN "New Plug-In"
#define VERSION "1.0"
#define AUTHOR "author"


new const T_ISYANCI[] = "models/player/t_isyanci/t_isyanci.mdl";
new const T_KATIL[] = "models/player/t_katil/t_katil.mdl";
new const T_DEFAULT[] = "models/player/t_default/t_default.mdl";
new const CT_DEFAULT[] = { "models/player/os_asker1/os_asker1.mdl","models/player/os_asker1/os_asker1T.mdl" }
new const CT_DEFAULT2[] = {"models/player/os_asker3/os_asker3.mdl","models/player/os_asker3/os_asker3T.mdl"}


new bool:blocked[33];
new basisyanci;
public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    register_clcmd("say /sec", "BasIsyanciSec")
    register_forward(FM_Voice_SetClientListening, "FwdSetVoice");
    register_event("HLTV","eNewRound","a","1=0","2=0")
    register_event("DeathMsg","eDeath","a")
    register_event( "TeamInfo", "eTeamChange", "a" );
    
    
}
public plugin_precache() {
    precache_model(T_ISYANCI)
    precache_model(T_DEFAULT)
    precache_model(T_KATIL)
    precache_model(CT_DEFAULT)
    precache_model(CT_DEFAULT2)
}
public BasIsyanciSec(id) {
    if(cs_get_user_team(id) == CS_TEAM_CT)
    {
        new menu = menu_create("\yBas Isyanci Sec","menu_handler")
        
        new players[32],inum;
        static tempid,szName[32],szID[6];
        get_players(players,inum,"ace","TERRORIST")
        for(new i;i<inum;i++) {
            tempid = players;
            get_user_name(tempid,szName,31)
            num_to_str(tempid,szID,5)
            menu_additem(menu,szName,szID)
        }
        menu_setprop(menu,MPROP_EXIT,MEXIT_ALL)
        menu_display(id,menu,0)
    }
    return PLUGIN_HANDLED
}
public menu_handler(id,menu,item) {
    if(item == MENU_EXIT) {
        menu_destroy(menu)
        return PLUGIN_HANDLED
    }
    new access,callback;
    new name[32],data[6];
    menu_item_getinfo(menu,item,access,data,5,name,31,callback)
    new Uid = str_to_num(data);
    new uname[32],admin[32];
    get_user_name(id,admin,31)
    if(is_user_connected(Uid)) {
        get_user_name(Uid,uname,31)
        basisyanci = Uid;
        cs_set_user_model(Uid,"t_isyanci")
        ColorChat(Uid,GREEN,"BAS ISYANCI SECILDIN: ^3+100 HP +1 Flashbang +Mik  Mahkumlari Gaza Getir ve Isyan Cikart !")
        ColorChat(0,GREEN,"^3%s: %s ^1Adli Oyuncuyu ^4Bas Isyanci ^1Olarak Secti !",admin,uname)
        set_pev(Uid,pev_health,200.0)
        give_item(Uid,"weapon_flashbang")
    }
    return PLUGIN_HANDLED
}
public eNewRound() {
    new players[32],inum;
    get_players(players,inum)
    static id;
    for(new i;i<inum;i++) {
        id = players;
        blocked = true;
        
        if(get_user_team(id) == 1) {
            cs_reset_user_model(id)
            cs_set_user_model(id,"t_default")
        }
    }
    basisyanci = 0;
}
public eDeath() {
    new killer = read_data(1);
    new victim = read_data(2);
    if(get_user_team(killer) == 1 && get_user_team(victim) == 2 && basisyanci != killer) {
        cs_set_user_model(killer,"t_katil")
    }
}
public eTeamChange() {
    
    new id = read_data(1);
    if(is_user_bot(id)) return PLUGIN_CONTINUE
    new team[12];
    read_data(2,team,11);
    
    switch( team[0] ) {
        
        case 'C' :{
            switch(random_num(1,2)) {
                case 1:cs_set_user_model(id,"os_asker1");
                    case 2:cs_set_user_model(id,"os_asker3");
                }
            
        }  
        case 'T' :{
            cs_set_user_model(id,"t_default")
        }    
    }
    return PLUGIN_CONTINUE
}
public FwdSetVoice(receiver, sender, listen) {
    if(get_user_team(sender) != 2 && basisyanci != sender) {
        engfunc(EngFunc_SetClientListening, receiver, sender, 0);
        return FMRES_SUPERCEDE;
    }
    if(sender == basisyanci && get_user_team(receiver) == 2) {
        engfunc(EngFunc_SetClientListening, receiver, sender, 0);
        return FMRES_SUPERCEDE;
    }
    return FMRES_IGNORED
}


Code:
/*    Formatright © 2009, ConnorMcLeod

    Players Models is free software;
    you can redistribute it and/or modify it under the terms of the
    GNU General Public License as published by the Free Software Foundation.


    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.


    You should have received a copy of the GNU General Public License
    along with Players Models; if not, write to the
    Free Software Foundation, Inc., 59 Temple Place - Suite 330,
    Boston, MA 02111-1307, USA.
*/


// #define SET_MODELINDEX


#include <amxmodx>
#include <fakemeta>


#define VERSION "1.3.1"


#define SetUserModeled(%1)        g_bModeled |= 1<<(%1 & 31)
#define SetUserNotModeled(%1)        g_bModeled &= ~( 1<<(%1 & 31) )
#define IsUserModeled(%1)        ( g_bModeled &  1<<(%1 & 31) )


#define SetUserConnected(%1)        g_bConnected |= 1<<(%1 & 31)
#define SetUserNotConnected(%1)        g_bConnected &= ~( 1<<(%1 & 31) )
#define IsUserConnected(%1)        ( g_bConnected &  1<<(%1 & 31) )


#define MAX_MODEL_LENGTH    16
#define MAX_AUTHID_LENGTH 25


#define MAX_PLAYERS    32


#define ClCorpse_ModelName 1
#define ClCorpse_PlayerID 12


#define m_iTeam 114
#define g_ulModelIndexPlayer 491
#define fm_cs_get_user_team_index(%1)    get_pdata_int(%1, m_iTeam)


new const MODEL[] = "model";
new g_bModeled;
new g_szCurrentModel[MAX_PLAYERS+1][MAX_MODEL_LENGTH];


new Trie:g_tTeamModels[2];
new Trie:g_tModelIndexes;
new Trie:g_tDefaultModels;


new g_szAuthid[MAX_PLAYERS+1][MAX_AUTHID_LENGTH];
new g_bPersonalModel[MAX_PLAYERS+1];


new g_bConnected;


public plugin_init()
{
    register_plugin("Players Models", VERSION, "ConnorMcLeod");


    register_forward(FM_SetClientKeyValue, "SetClientKeyValue");
    register_message(get_user_msgid("ClCorpse"), "Message_ClCorpse");
}


public plugin_precache()
{
    new szConfigFile[128];
    get_localinfo("amxx_configsdir", szConfigFile, charsmax(szConfigFile));
    format(szConfigFile, charsmax(szConfigFile), "%s/players_models.ini", szConfigFile);


    new iFile = fopen(szConfigFile, "rt");
    if( iFile )
    {
        new const szDefaultModels[][] = {"", "urban", "terror", "leet", "arctic", "gsg9",
                    "gign", "sas", "guerilla", "vip", "militia", "spetsnaz" };
        g_tDefaultModels = TrieCreate();
        for(new i=1; i<sizeof(szDefaultModels); i++)
        {
            TrieSetCell(g_tDefaultModels, szDefaultModels, i);
        }


        g_tModelIndexes = TrieCreate();


        g_tTeamModels[0] = TrieCreate();
        g_tTeamModels[1] = TrieCreate();


        new szDatas[70], szRest[40], szKey[MAX_AUTHID_LENGTH], szModel1[MAX_MODEL_LENGTH], szModel2[MAX_MODEL_LENGTH];
        while( !feof(iFile) )
        {
            fgets(iFile, szDatas, charsmax(szDatas));
            trim(szDatas);
            if(!szDatas[0] || szDatas[0] == ';' || szDatas[0] == '#' || (szDatas[0] == '/' && szDatas[1] == '/'))
            {
                continue;
            }


            parse(szDatas, szKey, charsmax(szKey), szModel1, charsmax(szModel1), szModel2, charsmax(szModel2));


            if( TrieKeyExists(g_tDefaultModels, szKey) )
            {
                if( szModel1[0] && !equal(szModel1, szKey) && PrecachePlayerModel(szModel1) )
                {
                    TrieSetString(g_tDefaultModels, szKey, szModel1);
                }
            }
            else if( equal(szKey, "STEAM_", 6) || equal(szKey, "BOT") )
            {
                parse(szRest, szModel1, charsmax(szModel1), szModel2, charsmax(szModel2));
                if( szModel1[0] && PrecachePlayerModel(szModel1) )
                {
                    TrieSetString(g_tTeamModels[1], szKey, szModel1);
                }
                if( szModel2[0] && PrecachePlayerModel(szModel2) )
                {
                    TrieSetString(g_tTeamModels[0], szKey, szModel2);
                }
            }
        }
        fclose( iFile );
    }
}


PrecachePlayerModel( const szModel[] )
{
    if( TrieKeyExists(g_tModelIndexes, szModel) )
    {
        return 1;
    }


    new szFileToPrecache[64];
    formatex(szFileToPrecache, charsmax(szFileToPrecache), "models/player/%s/%s.mdl", szModel, szModel);
    if( !file_exists( szFileToPrecache ) && !TrieKeyExists(g_tDefaultModels, szModel) )
    {
        return 0;
    }


    TrieSetCell(g_tModelIndexes, szModel, precache_model(szFileToPrecache));


    formatex(szFileToPrecache, charsmax(szFileToPrecache), "models/player/%s/%st.mdl", szModel, szModel);
    if( file_exists( szFileToPrecache ) )
    {
        precache_model(szFileToPrecache);
        return 1;
    }
    formatex(szFileToPrecache, charsmax(szFileToPrecache), "models/player/%s/%sT.mdl", szModel, szModel);
    if( file_exists( szFileToPrecache ) )
    {
        precache_model(szFileToPrecache);
        return 1;
    }


    return 1;
}


public plugin_end()
{
    TrieDestroy(g_tTeamModels[0]);
    TrieDestroy(g_tTeamModels[1]);
    TrieDestroy(g_tModelIndexes);
    TrieDestroy(g_tDefaultModels);
}


public client_authorized( id )
{
    get_user_authid(id, g_szAuthid, MAX_AUTHID_LENGTH-1);


    for(new i=1; i<=2; i++)
    {
        if( TrieKeyExists(g_tTeamModels[2-i], g_szAuthid) )
        {
            g_bPersonalModel |= i;
        }
        else
        {
            g_bPersonalModel &= ~i;
        }
    }
}


public client_putinserver(id)
{
    if( !is_user_hltv(id) )
    {
        SetUserConnected(id);
    }
}


public client_disconnect(id)
{
    g_bPersonalModel = 0;
    SetUserNotModeled(id);
    SetUserNotConnected(id);
}


public SetClientKeyValue(id, const szInfoBuffer[], const szKey[], const szValue[])
{
    if( equal(szKey, MODEL) && IsUserConnected(id) )
    {
        new iTeam = fm_cs_get_user_team_index(id);
        if( 1 <= iTeam <= 2 )
        {
            new szSupposedModel[MAX_MODEL_LENGTH];


            if( g_bPersonalModel & iTeam )
            {
                TrieGetString(g_tTeamModels[2-iTeam], g_szAuthid, szSupposedModel, charsmax(szSupposedModel));
            }
            else
            {
                TrieGetString(g_tDefaultModels, szValue, szSupposedModel, charsmax(szSupposedModel));
            }


            if( szSupposedModel[0] )
            {
                if(    !IsUserModeled(id)
                ||    !equal(g_szCurrentModel, szSupposedModel)
                ||    !equal(szValue, szSupposedModel)    )
                {
                    copy(g_szCurrentModel, MAX_MODEL_LENGTH-1, szSupposedModel);
                    SetUserModeled(id);
                    set_user_info(id, MODEL, szSupposedModel);
                #if defined SET_MODELINDEX
                    new iModelIndex;
                    TrieGetCell(g_tModelIndexes, szSupposedModel, iModelIndex);
                //    set_pev(id, pev_modelindex, iModelIndex); // is this needed ?
                    set_pdata_int(id, g_ulModelIndexPlayer, iModelIndex);
                #endif
                    return FMRES_SUPERCEDE;
                }
            }


            if( IsUserModeled(id) )
            {
                SetUserNotModeled(id);
                g_szCurrentModel[0] = 0;
            }
        }
    }
    return FMRES_IGNORED;
}


public Message_ClCorpse()
{
    new id = get_msg_arg_int(ClCorpse_PlayerID);
    if( IsUserModeled(id) )
    {
        set_msg_arg_string(ClCorpse_ModelName, g_szCurrentModel);
    }
}
Reply
#2
virgülle belirtme, aynı şekilde yeni sabit değişken yaratıp precache ettir. Ben öyle yapıyordum oluyordu


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply
#3
Teşekkür ederim sorunu çözdüm sayende Smile
Reply
#4
Rica ederim.

Çözülmüş İsteklere taşındı


CS:GO ve CS 1.6 için ücretli eklenti yapılır.
Plugin yazmak isteyenlere yardımcı olabilirim.
Skype adresimden ulaşabilirsiniz:
destek_596
Steam: http://steamcommunity.com/id/ca-nemesis/

Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Admin Zombie Model plugini satknun1997 3 3,805 01-01-17, 12:47
Last Post: RuLeT
  Lr pluginde bunny kapama t4t1fati 4 4,516 31-08-16, 17:24
Last Post: KemalKomutan
  JailBreak Shop Model Editleme faruk1907 6 7,969 03-08-16, 20:26
Last Post: murat1366
  [JB] Baş İsyancı ve Model Vermeleri Furkan Dize 24 6,396 15-04-15, 14:58
Last Post: MAJESTIC GAMING
  /clanmenu, boşluk bırakmama sorunu ve [İSTEK] leaffan1994 14 10,055 11-04-15, 15:21
Last Post: leaffan1994
  Pluginde hata lütfen yardım :) tarlacixx 2 4,952 10-04-15, 12:45
Last Post: kedusa
  Model skin hasanx9 4 3,207 06-03-15, 04:38
Last Post: bireysel
  [JB]Shop CT JOP SORUNU scarty 18 7,743 06-03-15, 04:28
Last Post: MysticMage
  Model mertcanen 6 3,379 25-01-15, 17:34
Last Post: ishak0678
  Colorchat Sorunu (Slotol) dable4 25 6,196 14-01-15, 21:09
Last Post: Neith

Foruma Atla:


Users browsing this thread: 1 Guest(s)