在你的遊戲中應用Lua(1) 呼叫函式

2021-03-31 08:57:00 字數 557 閱讀 8384

假設你在指令碼中定義了乙個函式:

function main(number)

number = number + 1

return number

end在你的遊戲**中,你希望在某個時刻呼叫這個函式取得它的返回值。

在lua中,函式等同於變數,所以你可以這樣來取得這個函式:

lua_getglobal(l, "main");//函式現在棧頂

現在,我們可以呼叫這個函式,並傳遞給它正確的引數:

lua_pushnumber(l, 100); //將引數壓棧

lua_pcall(l, 1, 1, 0); //呼叫函式,有乙個引數,乙個返回值

//返回值現在棧頂

int result = lua_tonumber(l, -1);

result 就是函式的返回值

完整的測試**如下:

#include "lua.h"

#include "lauxlib.h"

#include "lualib.h"

int main(int argc, char *argv)

lua學習 遊戲中的Lua

lua作為一種指令碼語言,可以快速地開發遊戲的原型。提高遊戲的開發效率。最熟悉不過的就是作為魔獸世界 博德之門 憤怒的小鳥等遊戲的指令碼語言。但是,具體來說,lua在遊戲中可以做什麼呢?在遊戲中,lua可以用來完成下面這些工作 編輯遊戲的使用者介面 定義 儲存和管理基礎遊戲資料 管理實時遊戲事件 建...

遊戲中代答的應用

隨著網路 遊戲的各種防外掛程式的公升級,做一款遊戲的 輔助工具就需要投入更多的心力。可以說,有時候費勁心機的寫了一些指令碼,反而因為無法答題或答題錯誤而沒有玩家願意去使用,因為辛苦練的號誰也不想被封?這樣一來,眾多苦逼的程式設計師不得不日夜守在 電腦前,遠端代為答題,隨著指令碼使用人數的增多,也需要...

專案2 遊戲中的角色(1)

all right reserved.檔名稱 test.cpp 作 者 韓雙志 完成日期 2016年3月30日 版本號 v1.0 問題描述 補充完整需要的成員函式,使角色能一定的規則行動或改變狀態。輸入描述 無 輸出描述 角色的歇涼和狀態 include include using namespac...