《龍騰世紀:起源》教學:如何在自己的模組產生玩者人物
作者:佚名 來源:本站 時間:2024-04-19 點擊:次
模組內玩家人物產生教學:
一般剛創立的模組(Module)沒有事件腳本(Script)來啟動玩家創立人物,要讓玩家可以使用DA內建的創立人物介面,可以使用以下的模組事件腳本來達到效果。
請先創立一個腳本,然后在腳本內輸入以下的腳本,之后打開模組屬性(檔案-> 管理模組-> 屬性)將Script 選擇你創立的以下腳本資源即可
編碼: :
#include "events_h"
#include "global_objects_h"
void main()
{
event ev = GetCurrentEvent();
int nEventType = GetEventType(ev); //extract event type from current event
int nEventHandled = FALSE; //keep track of whether the event has been handled
switch(nEventType)
{
case EVENT_TYPE_MODULE_START:
{
PreloadCharGen(); //preloads resources needed for character generation
StartCharGen(GetHero(),0); //initiates character generation
break;
}
}
if (!nEventHandled) //If this event wasn't handled by this script, let the core script try
{
HandleEvent(ev, RESOURCE_script_MODULE_CORE);
}
}
另一個快速的方法跳過人物產生介面
編碼:
#include "sys_chargen_h"
#include "utility_h"
...
case EVENT_TYPE_MODULE_START:
{
// skip character generation
object oHero = GetHero();
Chargen_InitializeCharacter(oHero);
Chargen_SelectGender(oHero,GENDER_MALE);
Chargen_SelectRace(oHero,RACE_HUMAN);
Chargen_SelectCoreClass(oHero,CLASS_WARRIOR);
Chargen_SelectBackground(oHero,BACKGROUND_NOBLE);
// give the player some equipment
object oItem = UT_AddItemToInventory(R"gen_im_arm_cht_lgt_rlr.uti");
EquipItem(oHero,oItem);
oItem = UT_AddItemToInventory(R"gen_im_arm_bot_lgt_rlr.uti");
EquipItem(oHero,oItem);
oItem = UT_AddItemToInventory(R"gen_im_arm_glv_lgt_rlr.uti");
EquipItem(oHero,oItem);
oItem = UT_AddItemToInventory(R"gen_im_arm_shd_sml_wdn.uti");
EquipItem(oHero,oItem);
oItem = UT_AddItemToInventory(R"gen_im_wep_mel_lsw_lsw.uti");
EquipItem(oHero,oItem);
break;
}
另一種方法是創建一個生物范本([b]Template),然后呼叫(LoadItemsFromTemplate) 函式將它復制到玩者人物. [/b]
編碼: :
case EVENT_TYPE_MODULE_START:
{
// skip character generation
object oHero = GetHero();
Chargen_InitializeCharacter(oHero);
Chargen_SelectRace(oHero,RACE_HUMAN);
Chargen_SelectCoreClass(oHero,CLASS_WARRIOR);
Chargen_SelectBackground(oHero,BACKGROUND_NOBLE);
LoadItemsFromTemplate(oHero, "gcd_hero.utc", TRUE);
break;
}
若要快速升級, 你可以加入以下的腳本到上面的任何范例內:
編碼: :
...
#include "sys_rewards_h"
const int FORCE_AUTOLEVEL = 2;
...
case EVENT_TYPE_MODULE_START:
{
object oHero = GetHero();
...
// Make character level 10
int nTargetLevel = 10;
RewardXP(oHero, RW_GetXPNeededForLevel(nTargetLevel), FALSE, FALSE);
SetAutoLevelUp(oHero, FORCE_AUTOLEVEL);
...
}
一個更復雜的腳本可能包括其他設定程式碼,例如觸發介紹或是電影通知玩家在游戲的劇情.
更多相關資訊
- 上一篇: 《龍騰世紀:起源》在已安裝SQL資料庫的電腦
- 下一篇: 《龍騰世紀:起源》自己隊伍的使用心得
更多資訊
- 《龍騰世紀:起源》自己隊伍的使用心得
- 《龍騰世紀:起源》一周目攻略流程
- 《龍騰世紀:起源》所有專精職業(Specializations)習得法
- 《龍騰世紀:起源》單人游戲使用自制的游戲道具
- 《阿凡達》試玩心得
- 《無主之地》Hunter-配點心得
- 《無主之地》10個機器人位置圖 擴充背包
- 《無主之地》火,毒,電,爆炸屬性攻略
- 《無主之地》各種怪物弱點攻略
- 《無主之地》Hunter打寶+刷屬性魔石
- 《無主之地》Hunter有趣玩法
- 《龍騰世紀:起源》安裝圖文詳解
- 《生存之旅2》初玩心得
- 《生存之旅2》改中文名,游戲建圖/加入,辦法!
- 《生存之旅2》成就:鑼鼓喧天、小胡子肉腳達成辦法
- 《生存之旅2》L4D2可玩L4D地圖
- 《生存之旅2》成就:惡橋上的屠殺
- 《生存之旅2》取得實戰老手成就
- 《生存之旅2》完美解決:進不去游戲,用武器跳,讀進度條跳,另附最新防跳補丁
- 《使命召喚6》心得:大呼過癮的軍武射擊游戲