Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

> Правила раздела

Перед созданием новой темы убедитесь, не искал ли кто-нибудь подобный плагин до вас, для этого следует воспользоваться поиском.

Все вновь созданные темы, с названием типа "Помогите найти", "А что это за плагин", "Ищу плагин", "Нужен плагин", "Подскажите пожалуйста название плагина" - будут удалены.
При создании темы постарайтесь максимально понятно сформулировать её заголовок так, чтобы он соответствовал функциям плагина который Вы ищите. В том случае, если Вам не удается сформулировать мысль и правильно расписать всё в теме, воспользуйтесь графическим редактором, к примеру Paint, что бы примерно изобразить функции нужного Вам плагина.

Размещение моделек по карте

Статус пользователя BoB222
сообщение 10.12.2013, 19:58
Сообщение #1
Стаж: 13 лет

Сообщений: 246
Благодарностей: 69
Полезность: 215

Ищу плагин "размещение моделек по карте" (предметов)
У кого какие предложения?) Заранее спасибо)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя bristol
сообщение 10.12.2013, 20:01
Сообщение #2


Стаж: 12 лет

Сообщений: 320
Благодарностей: 95
Полезность: 225

Скрытый текст
Код
#include < amxmodx >
#include < amxmisc >
#include < engine >

new const MODEL[ ] = "models/EJIKA2.mdl";

new g_szConfigFile[ 128 ];

public plugin_init( ) {
    register_plugin( "Tree Spawner", "1.0", "xPaw" );
    
    register_clcmd( "tree_spawn",  "CmdSpawnTree",   ADMIN_CFG );
    register_clcmd( "tree_remove", "CmdSpawnRemove", ADMIN_CFG );
}

public plugin_precache( )
    precache_model( MODEL );

public plugin_cfg( ) {
    new szMapName[ 32 ];
    get_mapname( szMapName, 31 );
    strtolower( szMapName );
    
    formatex( g_szConfigFile, 127, "addons/amxmodx/data/trees" );
    
    if( !dir_exists( g_szConfigFile ) ) {
        mkdir( g_szConfigFile );
        
        format( g_szConfigFile, 127, "%s/%s.txt", g_szConfigFile, szMapName );
        
        return;
    }
    
    format( g_szConfigFile, 127, "%s/%s.txt", g_szConfigFile, szMapName );
    
    if( !file_exists( g_szConfigFile ) )
        return;
    
    new iFile = fopen( g_szConfigFile, "rt" );
    
    if( !iFile )
        return;
    
    new Float:vOrigin[ 3 ], x[ 16 ], y[ 16 ], z[ 16 ], szData[ sizeof( x ) + sizeof( y ) + sizeof( z ) + 3 ];
    
    while( !feof( iFile ) ) {
        fgets( iFile, szData, charsmax( szData ) );
        trim( szData );
        
        if( !szData[ 0 ] )
            continue;
        
        parse( szData, x, 15, y, 15, z, 15 );
        
        vOrigin[ 0 ] = str_to_float( x );
        vOrigin[ 1 ] = str_to_float( y );
        vOrigin[ 2 ] = str_to_float( z );
        
        CreateTree( vOrigin );
    }
    
    fclose( iFile );
}

public CmdSpawnTree( const id, const iLevel, const iCid ) {
    if( !cmd_access( id, iLevel, iCid, 1 ) )
        return PLUGIN_HANDLED;
    
    new Float:vOrigin[ 3 ];
    entity_get_vector( id, EV_VEC_origin, vOrigin );
    
    if( CreateTree( vOrigin ) )
        SaveTrees( );
    
    return PLUGIN_HANDLED;
}

public CmdSpawnRemove( const id, const iLevel, const iCid ) {
    if( !cmd_access( id, iLevel, iCid, 1 ) )
        return PLUGIN_HANDLED;
    
    new Float:vOrigin[ 3 ], szClassName[ 10 ], iEntity = -1, iDeleted;
    entity_get_vector( id, EV_VEC_origin, vOrigin );
    
    while( ( iEntity = find_ent_in_sphere( iEntity, vOrigin, 100.0 ) ) > 0 ) {
        entity_get_string( iEntity, EV_SZ_classname, szClassName, 9 );
        
        if( equal( szClassName, "env_tree" ) ) {
            remove_entity( iEntity );
            
            iDeleted++;
        }
    }
    
    if( iDeleted > 0 )
        SaveTrees( );
    
    console_print( id, "[AMXX] Deleted %i trees.%s", iDeleted, iDeleted == 0 ? " You need to stand in tree to remove it" : "" );
    
    return PLUGIN_HANDLED;
}

CreateTree( const Float:vOrigin[ 3 ] ) {
    new iEntity = create_entity( "info_target" );
    
    if( !iEntity )
        return 0;
    
    entity_set_string( iEntity, EV_SZ_classname, "env_tree" );
    entity_set_int( iEntity, EV_INT_solid, SOLID_NOT );
    entity_set_int( iEntity, EV_INT_movetype, MOVETYPE_NONE );
    
    entity_set_size( iEntity, Float:{ -1.0, -1.0, -1.0 }, Float:{ 1.0, 1.0, 36.0 } );
    entity_set_origin( iEntity, vOrigin );
    entity_set_model( iEntity, MODEL );
    
    drop_to_floor( iEntity );
    
    return iEntity;
}

SaveTrees( ) {
    if( file_exists( g_szConfigFile ) )
        delete_file( g_szConfigFile );
    
    new iFile = fopen( g_szConfigFile, "wt" );
    
    if( !iFile )
        return;
    
    new Float:vOrigin[ 3 ], iEntity;
    
    while( ( iEntity = find_ent_by_class( iEntity, "env_tree" ) ) > 0 ) {
        entity_get_vector( iEntity, EV_VEC_origin, vOrigin );
        
        fprintf( iFile, "%f %f %f^n", vOrigin[ 0 ], vOrigin[ 1 ], vOrigin[ 2 ] );
    }
    
    fclose( iFile );
}
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя BoB222
сообщение 10.12.2013, 20:03
Сообщение #3
Стаж: 13 лет

Сообщений: 246
Благодарностей: 69
Полезность: 215

Спасибо

Отредактировал: BoB222, - 10.12.2013, 20:14
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя bristol
сообщение 10.12.2013, 20:09
Сообщение #4


Стаж: 12 лет

Сообщений: 320
Благодарностей: 95
Полезность: 225

Ну как бы в плагине самом это все есть) Название Tree Spawner.

Бинды:
tree_spawn (поставить модельку)
tree_remove (убрать модельку)

Создать папку trees в amxmodx/data (туда будут сохранятся коородинаты размещения моделек)

Не забудь поменять модельку на свою.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя BoB222
сообщение 10.12.2013, 20:14
Сообщение #5
Стаж: 13 лет

Сообщений: 246
Благодарностей: 69
Полезность: 215

Цитата(bristol @ 10.12.2013, 21:09) *
Ну как бы в плагине самом это все есть) Название Tree Spawner.

Бинды:
tree_spawn (поставить модельку)
tree_remove (убрать модельку)

Создать папку trees в amxmodx/data (туда будут сохранятся коородинаты размещения моделек)

Не забудь поменять модельку на свою.

Все бы хорошо, но моделька у меня не одна. Мне нужно что то типа меню с выбором модельки ну и бинды..))
Не хотел его ставить, но придется In-Game Advertisement System 1.8.3

Отредактировал: BoB222, - 10.12.2013, 20:52
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
exec1337
сообщение 10.12.2013, 20:55
Сообщение #6
Стаж: 13 лет

Сообщений: 6490
Благодарностей: 2558
Полезность: 491

Цитата(BoB222 @ 10.12.2013, 21:14) *
Все бы хорошо, но моделька у меня не одна. Мне нужно что то типа меню с выбором модельки ну и бинды..))
Не хотел его ставить, но придется In-Game Advertisement System 1.8.3

In Game Advertisement System
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя sergggzi
сообщение 10.12.2013, 20:56
Сообщение #7
Иконка группы

Стаж: 13 лет

Сообщений: 6536
Благодарностей: 6222
Полезность: 807

Цитата(exec1337 @ 10.12.2013, 20:55) *
In Game Advertisement System

In-Game Advertisement System 1.8.3
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя MaZzai
сообщение 11.12.2013, 4:06
Сообщение #8


Стаж: 17 лет

Сообщений: 2659
Благодарностей: 1411
Полезность: 1024

Был такой MastaMan у нас (скорее всего правильно ник написал), вот он и выложил нужный тебе плагин. Названия не помню.
Поиск в руки.

Цитата(sergggzi @ 10.12.2013, 20:56) *
In-Game Advertisement System 1.8.3

UPD:
именно
https://c-s.net.ua/forum/topic11658.html?hl=MastaMan
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя BoB222
сообщение 11.12.2013, 12:26
Сообщение #9
Стаж: 13 лет

Сообщений: 246
Благодарностей: 69
Полезность: 215

Цитата(MaZzai @ 11.12.2013, 5:06) *
Был такой MastaMan у нас (скорее всего правильно ник написал), вот он и выложил нужный тебе плагин. Названия не помню.
Поиск в руки.


UPD:
именно
https://c-s.net.ua/forum/topic11658.html?hl=MastaMan

Да я это до этого знал, думал просто есть аналог этого плагина, не хотел его ставить, поставил вроде все нормуль))
Всем спасибо)
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
  Ответить в данную темуНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: