Правила · Регистрация · Справка · Пользователи · Календарь · Поиск · Сообщения за день |
|
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
![]() |
#1 |
Геймер Новичок
|
![]() Здравствуйте Урок по коддингу (проверка имени перса и действия всё собрано в функцию)
Код:
void CheckMyPcharName(pchar.name){ if(pchar.name == MyNameIsTEST) { //Если имя нашего перса МуНамеИсТЕСТ то действие } else { //Если нет то действие } } Последний раз редактировалось dima12, 06.06.2010 в 15:39. |
![]() |
![]() |
#2 |
Геймер Новичок
|
![]() Урок по коддингу (проверка сколько денег заделано в функцию)
//> БОЛЬШЕ //< МЕНШЕ Код:
void CheckMyMoney(pchar.money) { if(pchar.money >= 1000) { //Действие } else { //Действие } if(pchar.money <= 1000) { //Действие } else { //Действие } } CheckMyMoney(); Последний раз редактировалось dima12, 06.06.2010 в 15:41. |
![]() |
![]() |
#3 |
Геймер Новичок
|
![]() Урок по коддингу (вызвать функцию из файла)
создадим 2 файла test12345.c and testruner.c в test12345.c запишем Код:
void TestCharacter(CharacterFromId()) { CharacterFromID(); } Код:
include "test12345.c"; TestCharacter(); ![]() Последний раз редактировалось dima12, 06.06.2010 в 15:42. |
![]() |
![]() |
#4 |
Геймер Новичок
|
![]() Здравствуйте решил написать вам исходник моих тестов загрузки
3D Моделий из игры К3 нет нет нет вам ненужно качать С++ компилятора и прочие штуки ненужно уметь кодить на С++ нужно всего знать основы К3 Скриптинга и уметь скомпилить мой код на ШТОРМЕ (как скомпилить писал в теме Уроки по коддингу от AddonMeiker) и так начнём всем известно что при загрузке мира игры и конечно моделий скриптинг чирпаит функцию загрузки у двига то йсть что мешает нам написать загрузку моделий формата К3? На скриптах движка да нечего не мешате значит напишем сийчяс ![]() //создали функцию и так по параметрам можно узнать что первая строка черпает название модели для загрузки из переменной или дефиниты а остальные кординаты отображения модели. //&& || and = Логические (И) Код:
#define ModelName "ModelName"; void Load3DK3Model(string ModelName,int posx,int posy, int posz) { if(!ModelName && posx || posy and posz) { ExitProgram(); //ERROR IF DON'T CORRECT } else { //ALL OK CONTINUE float x; float y; float z; if('FLOAT' == posx) { //CONTINUE #extern_program "ModelName" } else { ExitProgram(); //ERROR IF DON'T CORRECT } if('FLOAT' == posy) { //CONTINUE #extern_program "ModelName" } else { ExitProgram(); //ERROR IF DON'T CORRECT } IF('FLOAT' == posz) { //Если все проверки пройдены то грузим модель SendMessage(&&iiiii, "loadmodel", ". RESOURCE/Models/ModelName ."); } else { //Если непройдены выходим из проги ExitProgram(); } } С уважением АддонМейкер Удачи вам ![]() Последний раз редактировалось AddonMeiker, 12.06.2010 в 20:54. |
__________________
C/C++ Good ![]() ![]() |
![]() |
#5 |
Геймер Новичок
|
![]() Приветствутю скоро уроки со всеми из данных функций
![]() Код:
//открываем квест в судовом журнале SetQuestHeader(string idQuest) //делаем запись в судовом журнале.... AddQuestRecord(string idQuest,string idText) //закрываем квест в суд. журнале CloseQuestHeader(string idQuest) //проверить флаг состояние квеста... CheckQuestAttribute(string attributeName, string attributeValue) //удалить флаг состояния квеста DeleteQuestAttribute(string attributeName) //установить персонажа в ближайший локатор группы goto (но не ближе минимальной дистанции) SetCharacterToNearLocatorFromMe(string characterID, float minDistance) //получить ссылку на персонаж через его ID-шник CharacterFromID(string characterID) //пропустить некоторое время с фэйдом экрана WaitDate(string postName,int year, int month, int day, int hour, int minute) //установить камеру на просмотр корабля персонажа и вызвать квест через заданное число секунд SetCameraToShipView(string characterName, string questCheckName, float viewTimeInSec) //Закрыть все выходы на море в районе расположения своего корабля QuestCloseSeaExit() //Открыть все выходы на море в районе расположения своего корабля QuestOpenSeaExit() //найти локатор в локации по имени FindLocator(string locationName, string locatorName, ref locatorRef, bool fromRealLoadedLocators) //проверить попадает ли координата в заданный локатор в текущей локации CheckCurLocator(string group,string locator,float x,float y,float z) //заменить один локатор на новый адрес перегрузкии ChangeReloadData(string locationName,string locatorName, string toLocationName,string toLocatorName) //вернуть локатору старый адрес перегрузки ChangeBackReloadData(string locationName,string locatorName) //вызвать проверку квеста через заданное число секунд DoQuestCheckDelay(string questCheckName, float delayInSecond) //хм... выход наверное DoQuestDelayExit() //Временно сохранить все данные о нашем корабле в памяти ShipTempRemove(ref _refCharacter) //Восстановить данные о нашем старом корабле из памяти RestoreTempRemovedShip(ref _refCharacter) //Обменять двух персонажей кораблями ExchangeCharacterShip(ref oneCharacter, ref twoCharacter) //Задать квест, выполняемый после выхода из диалога AddDialogExitQuest(string questName) //Перегрузить главного персонажа в другую локацию и по завершению вызвать квест DoQuestReloadToLocation(string idLocation, string idGroup, string idLocator, string questName) //Перегрузить главного персонажа в другую локацию DoReloadCharacterToLocation(string idLocation, string idGroup, string idLocator) //Перегрузить главного персонажа в другую локацию из карты мира DoReloadFromWorldMapToLocation(string idLocation, string idGroup, string idLocator) //назад наверное перезагрузка.... ReloadFromWMtoL_complete() //Перегрузить главного персонажа в другую локацию из моря DoReloadFromSeaToLocation(string idLocation, string idGroup, string idLocator) //назад в море EndReloadToLocation() //Удалить квест из списка проверяемых квестов DeleteQuestCheck(string sQuestName) //Получить полное имя персонажа GetCharacterFullName(string idCharacter) //Сохранить состояние о пассажирах во временной переменной и временно удалить их всех StorePassengers(string idCharacter) //Восстановить запомненных ранее пассажиров и по возможности офицеров RestorePassengers(string idCharacter) //Смотрим на какого нибудь персонажа StartLookAftepchararacter(string idCharacter) //Прекратили смотреть на персонаж EndLookAftepchararacter() //восстановить персонаж (на случай, если он был до этого убит) ReanimateCharacter(string characterID) //установить случайное имя для персонажа SetCharacterRandomName(string characterID) //обработка события об уничтожении форта QuestFortDestroyed() //обработка события об захвате форта QuestFortCaptured() //о захвате корабля.... QuestShipCaptured() //хм... о смерти группы видимо QuestGroupDeath() //подготовиться к выгрузке в море по квесту QuestToSeaLogin_PrepareLoc(string islandID, string locGroup, string locName, bool sailUP) //подготовить персонажа для выгрузки в море по квесту QuestToSeaLogin_Add(string groupName) //запустить квестовую выгрузку в море QuestToSeaLogin_Launch() //убрать из локации всех персов указанного типа RemoveCharactersFromLocation(string idLocation, string modelName, string type) //------------------------------------------------------------------------------------------ //Character types //------------------------------------------------------------------------------------------ //Установить персонажу тип игрока void LAi_SetPlayerType(aref chr); //Установить персонажу тип офицера void LAi_SetOfficerType(aref chr); //Установить персонажу тип горожанина void LAi_SetCitizenType(aref chr); //Установить персонажу тип горожанина, без перемещения в группу void LAi_SetCitizenTypeNoGroup(aref chr); //Установить персонажу тип стражника void LAi_SetGuardianType(aref chr); //Установить персонажу тип стражника, без перемещения в группу void LAi_SetGuardianTypeNoGroup(aref chr) //Установить персонажу тип патруля void LAi_SetPatrolType(aref chr); //Установить персонажу тип патруля, без перемещения в группу void LAi_SetPatrolTypeNoGroup(aref chr); //Установить персонажу тип война void LAi_SetWarriorType(aref chr); //Установить персонажу тип война, без перемещения в группу void LAi_SetWarriorTypeNoGroup(aref chr); //Установить войну командира void LAi_warrior_SetCommander(aref chr, aref commander); //Разрешить или запретить диалоги для война void LAi_warrior_DialogEnable(aref chr, bool isEnable); //Сказать войну стоять при отсутствие целей void LAi_warrior_SetStay(aref chr, bool isStay); //Установить персонажу тип уличного торговца void LAi_SetMerchantType(aref chr); //Установить персонажу тип торговца, без перемещения в группу void LAi_SetMerchantTypeNoGroup(aref chr); //Установить персонажу тип стоячего void LAi_SetStayType(aref chr); //Установить персонажу тип стоячего, без перемещения в группу void LAi_SetStayTypeNoGroup(aref chr); //Установить персонажу тип сидячего void LAi_SetSitType(aref chr); //Установить персонажу тип сидячего, без перемещения в группу void LAi_SetSitTypeNoGroup(aref chr); //Установить персонажу тип бармена (only man) void LAi_SetBarmanType(aref chr); //Установить персонажу тип официантки, без перемещения в группу (only man) void LAi_SetBarmanTypeNoGroup(aref chr); //Установить персонажу тип официантки (only woman) void LAi_SetWaitressType(aref chr); //Установить персонажу тип официантки, без перемещения в группу (only woman) void LAi_SetWaitressTypeNoGroup(aref chr); //Установить персонажу тип бедника void LAi_SetPoorType(aref chr); //Установить персонажу тип бедника, без перемещения в группу void LAi_SetPoorTypeNoGroup(aref chr); //Установить персонажу тип губернатора void LAi_SetHuberType(aref chr); //Установить персонажу тип губернатора, без перемещения в группу void LAi_SetHuberTypeNoGroup(aref chr); //Установить персонажу тип губернатора, ходячего по комнате void LAi_SetHuberStayType(aref chr); //Установить персонажу тип губернатора, ходячего по комнате, без перемещения в группу void LAi_SetHuberStayTypeNoGroup(aref chr); //Указать губернатору точку возле карты void LAi_SetStayHuberPointMap(aref chr, string group, string locator); //Указать губернатору точку возле окна void LAi_SetStayHuberPointWindow(aref chr, string group, string locator); //Установить персонажу тип священика void LAi_SetPriestType(aref chr); //Установить персонажу тип священика, без перемещения в группу void LAi_SetPriestTypeNoGroup(aref chr); //Установить персонажу тип актёра void LAi_SetActorType(aref chr); //Установить персонажу тип актёра, без перемещения в группу void LAi_SetActorTypeNoGroup(aref chr); //------------------------------------------------------------------------------------------ //Actor //------------------------------------------------------------------------------------------ // // параметр quest: // если "" то никакой реакции по окончанию действия не будет // если "questName" то по окончанию действия сработает указанный квест // параметр timeout: // если -1 то задание будет выполняться, пока не выполниться // если >= 0 то по истечении заданного времени просимулируется выполнение задания в секундах // // // команды актёру можно отдавать только когда он загружен в локацию // // //------------------------------------------------------------------------------------------ //Указать актёру стоять, нелочиться void LAi_ActorStay(aref chr); //Указать актёру идти в заданный локатор, лочиться void LAi_ActorGoToLocator(aref chr, string group, string locator, string quest, float timeout); //Указать актёру бежать в заданный локатор, лочиться void LAi_ActorRunToLocator(aref chr, string group, string locator, string quest, float timeout); //Указать актёру идти в заданную локацию, лочиться void LAi_ActorGoToLocation(aref chr, string groupExit, string locatorExit, string locID, string groupEnter, string locatorEnter, string quest, float timeout); //Указать актёру бежать в заданную локацию, лочиться void LAi_ActorRunToLocation(aref chr, string groupExit, string locatorExit, string locID, string groupEnter, string locatorEnter, string quest, float timeout); //Указать актёру cледовать за персонажем в пределах локации, лочиться до подхода //При первом подходе или истечении времени сработает квест void LAi_ActorFollow(aref chr, aref follow, string quest, float timeout); //Указать актёру cледовать за персонажем по всем локациям, нелочиться //При первом подходе или истечении времени сработает квест void LAi_ActorFollowEverywhere(aref chr, string quest, float timeout); //Указать актёру на кого напасть, лочиться void LAi_ActorAttack(aref chr, aref enemy, string quest); //Указать актёру бояться другого персонажа, нелочиться void LAi_ActorAfraid(aref chr, aref by, bool canMove); //Активировать диалог между актёром и другим персонажем с подходом друг к другу, лочиться void LAi_ActorDialog(aref chr, aref to, string quest, float timeout, float dlgTime); //Активировать диалог между актёром и другим персонажем немедленно, лочиться void LAi_ActorDialogNow(aref chr, aref to, string quest, float dlgTime); //Активировать диалог с самим собой, лочиться void LAi_ActorSelfDialog(aref chr, string quest); //Указать актёру стоять и ждать диалог, лочиться void LAi_ActorWaitDialog(aref chr, aref by); //Проиграть анимацию для актёра, по окончанию вызвать квест, лочиться //Если анимация зацикленна, то квест вызовется по истечению времени void LAi_ActorAnimation(aref chr, string animation, string quest, float timeout); //Ориентировать актёра на персонажа (одноразово), нелочиться void LAi_ActorTurnToCharacter(aref chr, aref to); //Ориентировать актёра по локатору, нелочиться void LAi_ActorTurnByLocator(aref chr, string group, string locator); //Ориентировать актёра на локатор, нелочиться void LAi_ActorTurnToLocator(aref chr, string group, string locator); //Установить анимацию стоячего персонажа, модификатор idle-анимации void LAi_ActorSetStayMode(aref chr); //Установить анимацию сидячего персонажа, модификатор idle-анимации void LAi_ActorSetSitMode(aref chr); //Установить анимацию лежачего персонажа void LAi_ActorSetLayMode(aref chr); //Перейти в состояние ожидания новой команды, пользоваться этой функцией не рекомендуется void LAi_type_actor_Reset(aref chr) //------------------------------------------------------------------------------------------ //Characters control //------------------------------------------------------------------------------------------ //Установить время загрузки персонажа void LAi_SetLoginTime(aref chr, float start, float end); //Удалить время загрузки персонажа void LAi_RemoveLoginTime(aref chr); //Данный персонаж является верующим, и в определённое время находиться в церкви void LAi_SetFanatic(aref chr, string churchID, strung group, string locator, float start, float end); //Сделать обычным персонаж void LAi_RemoveFanatic(aref chr); //Запретить перерождение персонажа после убийства void LAi_NoRebirthEnable(aref chr); //Разрешить перерождение персонажа после убийства void LAi_NoRebirthDisable(aref chr); //Разрешить/запретить персонажу загружаться в захваченную локацию void LAi_LoginInCaptureTown(aref chr, bool isEnable); //Установить хитпойнты void LAi_SetHP(aref chr, float cur, float max); //Установить текущии хитпойнты void LAi_SetCurHP(aref chr, float cur); //Установить текущии хитпойнты максимальными void LAi_SetCurHPMax(aref chr); //Скорость изменения хп в секунду void LAi_SetDltHealth(aref chr, float healthPerSec); //Использовать бутылочку void LAi_UseHealthBottle(aref chr, float healthInBottle); //Сделать персонажа бессмертным void LAi_SetImmortal(aref chr, bool isImmortal); //Получить хп персонажа float LAi_GetCharacterHP(aref chr); //Получить максимальные хп персонажа float LAi_GetCharacterMaxHP(aref chr); //Получить относительные хп персонажа 0..1 float LAi_GetCharacterRelHP(aref chr); //Получить относительную энергию персонажа 0..1 float LAi_GetCharacterRelEneggy(aref chr); //Установить проверяльщик хп, если их становиться меньше чем, вызвать квест void LAi_SetCheckMinHP(aref chr, float min, bool immortal, string quest); //Удалить проверяльщик хп void LAi_RemoveCheckMinHP(aref chr); //Убить персонажа void LAi_KillCharacter(aref chr); //Убит ли персонаж bool LAi_IsDead(aref chr); //Получить относительный заряд пистолета float LAi_GetCharacterRelCharge(aref chr); //Запретить диалог с персонажем void LAi_CharacterDisableDialog(aref chr); //Разрешить диалог с персонажем void LAi_CharacterEnableDialog(aref chr); //Разрешить при смерти порождить фантома void LAi_CharacterReincarnation(aref chr, bool isEnable, bool isUseCurModel); //Скил fencing для персонажа при логине выставляется относительно игрока void LAi_SetAdjustFencingSkill(aref chr, float min, float max); //Удалить выставлялку скила void LAi_DelAdjustFencingSkill(aref chr); //Проиграть звук void LAi_CharacterPlaySound(aref chr, string soundname); //Переключиться в режим боя и обратно void LAi_SetFightMode(aref chr, bool isFightMode); //Заблокировать текущий режим (!!! сбрасывается при смене шаблона !!!) void LAi_LockFightMode(aref chr, bool isLockFightMode); |
__________________
C/C++ Good ![]() ![]() |
![]() |
#6 |
Геймер Новичок
|
![]() Здравствуйте урок как сделать ГГ или перса неуязвимым и обратно на самом деле очень просто
Код:
LAi_SetImmortal(Pchar, true); ![]() ![]() Код:
LAi_SetImmortal(CharacterFromID("TestCharacter"), true); ![]() Последний раз редактировалось AddonMeiker, 24.06.2010 в 00:23. |
__________________
C/C++ Good ![]() ![]() |
![]() |
#7 |
BGTeam
|
![]() В чём смысл уроков если они не приследуют конкретную цель?
Описание изменения входных атрибутов функций - это не урок. |
![]() |
![]() |
#8 |
Геймер Новичок
|
![]() я напишу скоро примеры работы с квестами на основе данных уроков.
![]() Здравствуйте по замечанию что в моих уроках нету целы что я уже и сам понял решил написать урок по созданию простого квеста. ![]() Код:
case "TestQuest": Pchar.quest.TestQuest.win_condition.l1 = "ExitFromLocation"; Pchar.quest.TestQuest.location.l1 = "Pchar.location"; Pchar.quest.TestQuest.win_condition = "nextquest"; break; Код:
AddDialogExitQuest("TestQuest"); и так в данном квесте мы удачно завершаем квест если ГГ выйдет из той локации где он находиться сейчяс и после чего будет переход на квест(кейс) nextquest. Скоро продолжение уроков по созданию квестов. ![]() Последний раз редактировалось dima12, 25.06.2010 в 11:34. |
__________________
C/C++ Good ![]() ![]() |
![]() |
#9 | |||||||||||||||||||||||
BGTeam
|
![]()
этот "урок" тоже ни о чем. К тому же я несколько лет назад это все у нас на форуме уже описывал. Можно без труда найти=) + можно найти список фунций с комменатариями небольшими по их работе. Последний раз редактировалось dima12, 25.06.2010 в 11:33. |
|||||||||||||||||||||||
__________________
Нужный человек не в том месте может перевернуть мир! ![]() |
![]() |
#10 |
Геймер
|
![]() Не ругайте AddonMeikerа, он выложил список ООООЧень полездных функций
![]() ![]() |
![]() |
![]() |
|
Здесь присутствуют: 1 (пользователей - 0 , гостей - 1) | |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Уроки Fallout 3 | BestGamer.Ru | 2009 | 0 | 31.01.2009 17:09 |
НЕсерьезные уроки. Английский. Сборник | BestGamer.Ru | 2007 | 0 | 02.12.2007 18:53 |
Уроки по коддингу. | Flint | Ваше творчество | 5 | 24.03.2007 11:55 |
Часовой пояс GMT +4, время: 09:03 |
Архив |
![]() |