研究War3編輯器(4) 觸發器與變數

2021-10-24 15:40:28 字數 2130 閱讀 2655

在【觸發編輯器】裡,可以對「觸發器」和「變數」進行編輯。他們可以以較為簡單的方式來指定遊戲中的一些邏輯,而不必寫**。

例如,目前可以看到乙個名為melee initialization的觸發器。

「觸發器」代表了一種邏輯:

在特定時機並且滿足限定條件下需要進行的一系列操作

例如,目前在melee initialization這個預設新增的觸發器中,可以看到它觸發的時機是「map initialization」即地圖初始化時。而它進行了一系列的初始化操作,他們在動作中可以看到。

有時候,想要實現的邏輯其中包含了一些「非固定的量」,例如:我想要讓英雄公升級到「x級」,但這個「x」是由其他邏輯進行決定的。這時,「x」就是乙個變數了。

「變數」對於程式設計而言是乙個基礎的概念,而關於它,乙個重要的屬性就是「作用域」:例如對於乙個全域性作用域的變數,在任何地方都可以訪問,而乙個區域性作用域的變數,只在乙個範圍內可見。

在【觸發編輯器】這個介面中,新增的變數似乎都屬於全域性變數,至於區域性變數,似乎只存在於在jass指令碼中(此說法參考world-editor-tutorials : learning variable basics)。而關於jass指令碼,目前了解較少,有待後續研究。

首先,新增乙個新的「類別」

新的類別起名為「測試類別」,然後就可以在其中新增「新觸發(trigger)」了。

新的觸發器命名為「testtrigger」,

工具欄的三個按鈕分別可以新增新的事件條件動作。新增後的可以在右下側看到(當前沒有任何內容)。

這裡打斷一下觸發器的操作,我需要在地圖中新加乙個單位作為測試,我是玩家1紅色方,這裡我需要乙個敵對方。因此新增乙個「玩家2陣營(藍色方)」的農民:

然後新增新事件

然後新增對應的動作

型別為環境 - create weather effect建立天氣效果,而這個效果就是「灰谷大雨」

這樣就表示,當這個農民死亡時,會觸發下雨的天氣特效了。

效果如下:

新增乙個新的變數:

新變數命名為test,變數型別是整數,初始值是7

然後為testtrigger新增新的事件:

這樣的意思是,現在農民死亡之後,不僅會下雨,還會讓英雄公升級的test的值(7)。

效果:world-editor-tutorials : trigger basics and formats

world-editor-tutorials : learning variable basics

oracle系列4 觸發器

一 簡介 觸發器是與表直接關聯的特殊儲存過程,與表的關係密切,用於保護表中的資料。當有操作影響到觸發器保護的資料時,觸發器將自動執行。二 觸發器的三種型別 1 dml觸發器 當資料庫中發生dml事件時 insert,select,update,delete 將呼叫觸發器。2 替代觸發器 也稱檢視觸發...

機房重構(4) 觸發器的使用

上篇文章 機房重構 3 儲存過程 介紹了儲存過程的使用,接下來介紹一下觸發器的使用。說到觸發器,我們並不陌生,我們學習過程中涉及到非常多相關的知識,可是欠缺的實踐應用。通過這次機房收費,對觸發器有了進一步的理解。1 簡單介紹 觸發器也是一種與表事件相關的特殊的儲存過程。由事件來觸發,當對乙個表進行操...

Oracle資料庫 4 觸發器

資料庫觸發器時儲存於資料庫的命令 pl sql 語句塊,當觸發器發生時它們會隱含執行。執行觸發器的活動被稱為觸發觸發器。觸發事件的中類 處理資料庫表的 dml 語句 insert update,delete ddl 語句 如 create alter 系統事件 如資料庫啟動或關閉。使用者事件,如登入...