欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 运维知识 > windows >内容正文

windows

魔兽地图服务器存档修改本地存档,【Jass】Preload存档系统,本地写入文件并读取...

发布时间:2023/12/8 windows 59 豆豆
生活随笔 收集整理的这篇文章主要介绍了 魔兽地图服务器存档修改本地存档,【Jass】Preload存档系统,本地写入文件并读取... 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

把下面的所有Jass复制到这里即可,Name=“preload” 这个引号里面的名字可以改成你想要的存档文件名

//[Jass]

library PreSystem initializer Pre_Init

globals

private string MapName = "preload" //存档名

private integer Key

private string Str_temp

private hashtable HT

endglobals

function Pre_SaveInt takes integer key, integer value returns nothing

if value >= 0 then

call Preload("\" )

call SetPlayerTechMaxAllowed(Player(14),"+I2S(key)+",1)

call SetPlayerTechMaxAllowed(Player(15),"+I2S(key)+","+I2S(value)+")

//")

else

call Preload("\" )

call SetPlayerTechMaxAllowed(Player(14),"+I2S(key)+",2)

call SetPlayerTechMaxAllowed(Player(15),"+I2S(key)+","+I2S(-value)+")

//")

endif

endfunction

function Pre_SaveStr_Get takes nothing returns nothing

call SaveStr(HT, Key, GetPlayerTechMaxAllowed(Player(13),Key), GetPlayerName(Player(15)))

endfunction

function Pre_SaveStr takes integer key, string value returns nothing

call Preload("\" )

call SetPlayerName(Player(15),\""+value+"\")

call SetPlayerTechMaxAllowed(Player(13),"+I2S(Key)+","+I2S(key)+")

call ExecuteFunc(\"Pre_SaveStr_Get")

//")

endfunction

function Pre_SaveStart takes nothing returns nothing

call PreloadGenClear()

call PreloadGenStart()

endfunction

function Pre_SaveEnd takes nothing returns nothing

call PreloadGenEnd("save\\"+MapName+"\\Data.txt") //注意你读取的路径要和你存档的路径一致

endfunction

function Pre_LoadInt takes integer key returns integer

local integer var_type = GetPlayerTechMaxAllowed(Player(14), key)

if var_type == 1 then

return GetPlayerTechMaxAllowed(Player(15), key)

elseif var_type == 2 then

return -GetPlayerTechMaxAllowed(Player(15), key)

else

return 0

endif

endfunction

function Pre_LoadStr takes integer key returns string

return LoadStr(HT, Key, key)

endfunction

function Pre_LoadStart takes nothing returns nothing

set Str_temp = GetPlayerName(Player(15))

call Preloader("save\\"+MapName+"\\Data.txt") //这里可以填写任意你想要写存档的路径

endfunction

function Pre_LoadEnd takes nothing returns nothing

call SetPlayerName(Player(15),Str_temp)

call FlushChildHashtable(HT, Key)

endfunction

function Pre_LocalLoadJudge takes nothing returns boolean

call PreloadGenClear()

call PreloadGenStart()

call Pre_SaveInt(0, 1)

call PreloadGenEnd("save\\"+MapName+"\\Test.txt")

call Preloader("save\\"+MapName+"\\Test.txt")

return Pre_LoadInt(0) == 1

endfunction

function Pre_Init takes nothing returns nothing

set HT = InitHashtable()

set Key = StringHash(MapName)

if Key < 0 then

set Key = -Key

endif

endfunction

endlibrary

//[Jass]

总结

以上是生活随笔为你收集整理的魔兽地图服务器存档修改本地存档,【Jass】Preload存档系统,本地写入文件并读取...的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。