[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Форум » Проекты » Ваши проекты » Plugin SDK » Вопросы по Plugin SDK (В этой теме задаются вопросы по плагину от DK22Pac)
Вопросы по Plugin SDK
wmysterio
Администраторы
Скриптер
17.02.18 22:09
Offline
Решил сделать отдельную тему для тех, кто пытается разрабатывать моды, используя Plugin SDK. В общем, сами вопросы задавать здесь. Тема с основной информацией будет здесь.

Yurko_UA
Друзья
17.02.18 22:09
Offline
ДК, прокомментируй пожалуйста код.

Добавлено (10.03.14, 19:44)
---------------------------------------------
Дк. Может, конечно тупой вопрос, но можно ли скомпилить например АСИ скрипт с какой-то функцией в dll'шку и вызвать ее с помощью CLEO скрипта? Получится же?


SHooZ
Друзья
17.02.18 22:09
Offline
Yurko_UA, да, если эти функции проэкспортированные.

NarutoUA
Пользователи
17.02.18 22:10
Offline
Как установить новую версию с гитхаба?Я так понял надо компилировать через СМаке но студия 2012 ругается с ошибкой:

error C2226: syntax error : unexpected type 'RwCamera'

Можете еще подсказать, как установить метку на радаре на любые координаты или автомобиль?

SHooZ
Друзья
17.02.18 22:10
Offline
Цитата NarutoUA ()
Как установить новую версию с гитхаба?
Я использую TortoiseSVN
Цитата NarutoUA ()
Я так понял надо компилировать через СМаке
Нет, просто подключаешь нужные тебе заголовки и использываешь их в плагине.
Цитата NarutoUA ()
Можете еще подсказать, как установить метку на радаре на любые координаты или автомобиль?
Я не уверен, но в CRadar.cpp описаны функции SetEntityBlip(eBlipType type, int entityHandle, unsigned int arg2, eBlipDisplay blipDisplay) и SetCoordBlip(eBlipType type, CVector posn, unsigned int arg2, eBlipDisplay blipDisplay, char* scriptName).

Вообще-то, в исходниках МТА за это отвечают функции CreateMarker() и они, покрайней мере мне, боле понятно описаны.

NarutoUA
Пользователи
17.02.18 22:10
Offline
Да там вроде не все так просто,надо ведь найти свободный ид для блипа или ще что-нибуть
Отредактировал NarutoUA - Четверг, 11.09.14, 16:18

SHooZ
Друзья
17.02.18 22:10
Offline
Цитата NarutoUA ()
При компиляции у меня вылазит такая ошибка:
Пролинкуй проект:
ПКМ по названию проекта -> References->Linker->Input->Additional Dependencies->ПКМ->Edit  и пишешь plugin.lib

NarutoUA
Пользователи
17.02.18 22:10
Offline
Цитата SHooZ ()
Пролинкуй проект: ПКМ по названию проекта -> References->Linker->Input->Additional Dependencies->ПКМ->Edit  и пишешь plugin.lib
Проблему решил, просто переименовав функу. Сейчас вот буду играться с меткой на радаре

Добавлено (11.09.14, 17:50)
---------------------------------------------
Теперь появилась новая ошибка:

 error LNK2001: unresolved external symbol "void __cdecl plugin::Core::RegisterFunc(enum plugin::eFuncType,void (__cdecl*)(void))" (?RegisterFunc@Core@plugin@@YAXW4eFuncType@2@P6AXXZ@Z)

plugin.lib прописал в Linker->Input. Вот как подключал сдк

Добавлено (13.09.14, 19:32)
---------------------------------------------
Все, разобрался с ошибками,сдк удалось подключить. Но есть проблема с меткой на радаре. Там ведь надо получить какой-то массив индексов, потом свободный индекс, потом ещеченить.


DK22Pac
Модераторы
TOP Скриптер
17.02.18 22:10
Offline
Просто вызывай функции для создания блипа.

SHooZ
Друзья
17.02.18 22:11
Offline
Цитата DK22Pac ()
Просто вызывай функции для создания блипа.

Код
void drawBlip()
{
     CVector *coord;
     coord->x = 0.0;
     coord->y = 0.0;
     CRadar::SetCoordBlip(BLIP_HANDLE_COORD,*coord, 0 , BLIP_DISPLAY_BLIPONLY,"test");
}
Не понимаю, что за 3 аргумент, ну да ладно. Игра вылетает, проблема в scriptName?

DK22Pac
Модераторы
TOP Скриптер
17.02.18 22:11
Offline
это не в драве надо вызывать, а как в скрипте.

SHooZ
Друзья
17.02.18 22:11
Offline
DK22Pac, я сделал наброски класса для логирования используя исходники CLEO. Можешь добавить что-то похоже в PluginSDK и трасировать при потребности вызов в каждой функции, как в МТА?
Прикрепления: log.h(1.2 Kb)

NarutoUA
Пользователи
17.02.18 22:11
Offline
Как скомпилировать plugin.lib под новую студию? Ато VS 2013 ругается при компиляции проэкта на несовместимую(старую) версию plugin.lib

SHooZ
Друзья
17.02.18 22:11
Offline
Цитата NarutoUA ()
Как скомпилировать plugin.lib под новую студию? Ато VS 2013 ругается при компиляции проэкта на несовместимую(старую) версию plugin.lib
Вроде никак. Дк22 должен сам пересобрать plugin.lib под новый компилятор

NarutoUA
Пользователи
17.02.18 22:11
Offline
Цитата SHooZ ()
Вроде никак. Дк22 должен сам пересобрать plugin.lib под новый компилятор
Та вроде как можно и самому, через програму CMake, там ведь не зря на гитхабе лежат файлы для сборки проэкта любых студий с помощью этой программы

Вроде как удалось создать проэкт для новой студии, но при компиляции выводит вот такую ошибку:

Цитата
Error 1 error C2226: syntax error : unexpected type 'RwCamera' E:\C++ Sources\PluginSDK\plugin-sdk-master\plugin-sdk-master\src\sdk\game_sa\CScene.h 15 1 plugin-sdk-base
Отредактировал NarutoUA - Пятница, 26.09.14, 22:59

DK22Pac
Модераторы
TOP Скриптер
17.02.18 22:12
Offline
NarutoUA, добавь
Код
#include "RenderWare.h"

в CScene.h.
Или перекачай заново исходники с гит-хаба.

NarutoUA
Пользователи
17.02.18 22:12
Offline
А теперь компилятор опять ругается, и опять та же ошибка (RenderWare.h подключил)
Код
Error   1   error C2226: syntax error : unexpected type 'RwCamera'   E:\C++ Sources\PluginSDK\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\game_sa\CScene.h   16   1   plugin-sdk-base
И посылает меня на файл CScene.h

Я вот думаю вот тут что-то не так:

RwCamera *m_pRwCamera;

Тут RwCamera не хочет быть структурой

На гит хабе ведь версия месячной давности, но я все ровно ее перекачал.

Добавлено (09.10.14, 23:35)
---------------------------------------------
Вот полный лог-лист:

Цитата
1>------ Build started: Project: ZERO_CHECK, Configuration: Debug Win32 ------
2>------ Build started: Project: plugin-sdk-base, Configuration: Debug Win32 ------
3>------ Build started: Project: plugin-sdk-sa, Configuration: Debug Win32 ------
2>  plugin.cpp
3>  CScene.cpp
3>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\game_sa\CScene.h(17): error C2226: syntax error : unexpected type 'RwCamera'
3>E:\C++ Sources\PluginSDK\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\game_sa\CScene.cpp(3): error C2226: syntax error : unexpected type 'RwCamera'
2>E:\C++ Sources\PluginSDK\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\game_sa\CScene.h(17): error C2226: syntax error : unexpected type 'RwCamera'
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(55): error C2228: left of '.m_pRwCamera' must have class/struct/union
2>          type is 'RwCamera *'
2>          did you intend to use '->' instead?
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(57): error C2228: left of '.m_pRwCamera' must have class/struct/union
2>          type is 'RwCamera *'
2>          did you intend to use '->' instead?
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(57): error C2227: left of '->frameBuffer' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(59): error C2228: left of '.m_pRwCamera' must have class/struct/union
2>          type is 'RwCamera *'
2>          did you intend to use '->' instead?
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(67): error C2228: left of '.m_pRwCamera' must have class/struct/union
2>          type is 'RwCamera *'
2>          did you intend to use '->' instead?
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(67): error C2227: left of '->frameBuffer' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(67): error C2227: left of '->width' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(68): error C2228: left of '.m_pRwCamera' must have class/struct/union
2>          type is 'RwCamera *'
2>          did you intend to use '->' instead?
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(68): error C2227: left of '->frameBuffer' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(68): error C2227: left of '->height' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(69): error C2228: left of '.m_pRwCamera' must have class/struct/union
2>          type is 'RwCamera *'
2>          did you intend to use '->' instead?
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(69): error C2227: left of '->frameBuffer' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(69): error C2227: left of '->depth' must point to class/struct/union/generic type
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(72): error C3536: 'width': cannot be used before it is initialized
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(72): error C3536: 'height': cannot be used before it is initialized
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(72): error C3536: 'depth': cannot be used before it is initialized
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(83): error C3536: 'width': cannot be used before it is initialized
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(83): error C3536: 'height': cannot be used before it is initialized
2>e:\c++ sources\pluginsdk\plugin-sdk-master (1)\plugin-sdk-master\src\sdk\plugin\internal/CallbackPostFX.hpp(83): error C3536: 'depth': cannot be used before it is initialized
4>------ Build started: Project: plugin-sdk, Configuration: Debug Win32 ------
4>LINK : fatal error LNK1181: cannot open input file 'E:\C++ Sources\PluginSDK\plugin-sdk-master (1)\Compiled\src\sdk\plugin\plugin-sdk-base.dir\Debug\plugin.obj'
5>------ Skipped Build: Project: ALL_BUILD, Configuration: Debug Win32 ------
5>Project not selected to build for this solution configuration 
========== Build: 1 succeeded, 3 failed, 0 up-to-date, 1 skipped ==========
Отредактировал NarutoUA - Пятница, 10.10.14, 00:27

DK22Pac
Модераторы
TOP Скриптер
17.02.18 22:12
Offline
NarutoUA, убери #include "RwTypes.h" и добавь #include "RenderWare.h"
Ещё проверь, что в plugin.cpp подключен CScene.h.

NarutoUA
Пользователи
17.02.18 22:12
Offline
DK22Pac, да все ровно вылазит эта ошибка.

Вот CScene.h:


Код
#pragma once

#include <plugin/plugin.h>
//#include "RenderWareTypes.h"
#include "RenderWare.h"

#pragma pack(push, 4)
class PLUGIN_API CScene
{
public:
        RpWorld *m_pRpWorld;
        RwCamera *m_pRwCamera;
};
#pragma pack(pop)

extern PLUGIN_API CScene &Scene;


Весь проэкт во вложениях

Добавлено (10.10.14, 17:39)
---------------------------------------------
Мне скорее всего кажется, что ошибка где-то в RenderWare.h (хотя могу ошибатся).

Вот структура в этом файле нормально сидит.


В вот если опуститься чучуть пониже, тут есть еще RwCamera только с ошибками:





Хотя вот другие структуры (RwObjectHasFrame к примеру) нормально сидят и не выделываются.
Отредактировал NarutoUA - Пятница, 10.10.14, 19:18
Прикрепления: Project_VS_2013.rar(714.2 Kb) · Source.rar(356.1 Kb)

DK22Pac
Модераторы
TOP Скриптер
17.02.18 22:12
Offline
NarutoUA, удали этот дефайн (Scene) из RenderWare.h.

Форум » Проекты » Ваши проекты » Plugin SDK » Вопросы по Plugin SDK (В этой теме задаются вопросы по плагину от DK22Pac)
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск: