OK論壇

 找回密碼
 註冊
查看: 6959|回復: 15

[函數] [ getd / setd ] 使用教學

[複製鏈接]
  • TA的每日心情
    慵懶
    2012-6-13 04:41 PM
  • 簽到天數: 9 天

    連續簽到: 0 天

    [LV.3]偶爾看看II

    發表於 2008-12-13 19:04:29 | 顯示全部樓層 |閱讀模式
    本帖最後由 哆啦ˇ 於 2009-11-18 07:12 PM 編輯

    setd 指 令 和 getd 函 數 雖 然 使 用 率 不 高

    但 卻 是 非 常 方 便 的 指 令

    說 穿 了 這 兩 個 指 令 就 是 把 字 串 轉 成 變 數 看 待

    用法

    *setd "變數名稱",值;

    *getd("變數名稱");

    眼 利 的 玩 家 可 能 會 發 現  變 數 名 稱   旁 多 了 兩 個  "

    為 何 會 有 這 兩 個 " ?

    因 為 這 兩 個 指 令 都 是 使 用 字 串 當 作 變 數 名 稱

    也 就 是 因 為 如 此 變 化 性 也 會 變 大


    實作
    如 一 個 Cid 為 150001 名 稱 為   使 用 者   的 玩 家   使 用 以 下 腳 本
    setd "$@PC_NAME_"+getcharid(0)+"$",strcharinfo(0);
    這 樣 將 會 使  $@PC_NAME_150001 = "使 用 者";
    getd("$@PC_NAME_"+getcharid(0)+"$")
    將 會 讀 取 出 "使 用 者" 的 資 料
    也 就 是 說 他 會 將 字 串 運 算 出 來 當 成 變 數 來 執 行
    回復

    使用道具 舉報

  • TA的每日心情
    開心
    2021-12-17 05:30 AM
  • 簽到天數: 237 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2008-12-13 19:37:46 | 顯示全部樓層
    看完了 也看懂了

    不過就是不太了解能使用在哪= =

    謝謝大大的教學
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2008-12-14 08:55:42 | 顯示全部樓層
    #2
    意 思 可 以 想 成 set " set 數 值 名 稱 " , XXX;

    應 該 是 這 樣 子
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2021-12-17 05:30 AM
  • 簽到天數: 237 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2008-12-14 09:36:07 | 顯示全部樓層

    #3

    這部份我知道

    他是能夠將一個變數  設定為文字

    而且set 好像也能做到

    我只是不知道他能夠運用在哪方面
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2008-12-14 09:38:20 | 顯示全部樓層
    #4
    陣 列 數 值 名 稱
    改 變 數 值 名 稱
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2012-6-13 04:41 PM
  • 簽到天數: 9 天

    連續簽到: 0 天

    [LV.3]偶爾看看II

     樓主| 發表於 2008-12-14 09:41:16 | 顯示全部樓層
    他 並 不 是 可 以 將 一 個 變 數 設 定 為 文 字

    而 是 可 以 將 文 字 看 成 變 數

    Ex
    set a$,"@";
    set b$,"pc";
    setd a$ + b$,10;
    這樣會使@pc = 10
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2008-12-14 09:43:27 | 顯示全部樓層
    #6
    早 說 嘛 ~ 害 我 誤 會 (( 歐
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2021-12-17 05:30 AM
  • 簽到天數: 237 天

    連續簽到: 1 天

    [LV.7]常住居民III

    發表於 2008-12-14 09:56:44 | 顯示全部樓層
    我去翻了script_command 裡面的解說我才看懂他的用法
    set $name$, "Undertaker";
    比較↑↓兩者用法
    setd "$name$", "Undertaker";
    mes "+$name$+"; // 顯示Undertaker

    setd "$" + $name$ + "123$", "Undertaker是送葬者";
    mes "+$Undertaker123$+"; // 顯示Undertaker是送葬者

    這樣應該沒錯吧??
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    慵懶
    2012-6-13 04:41 PM
  • 簽到天數: 9 天

    連續簽到: 0 天

    [LV.3]偶爾看看II

     樓主| 發表於 2008-12-14 15:07:21 | 顯示全部樓層
    恩、沒錯ˇ

    使用時間很廣泛…

    例如:擁有腳色性質之伺服器變數…
    Ex:
    setd "$@Kill_"+getcharid(0),1;
    或者:擁有編號性質的陣列取得
    setarray $@item_1,123,456,789;
    setarray $@item_2,456,789,123;
    .....
    getd("$@item_"+i+"["+k+"]")
    回復 支持 反對

    使用道具 舉報

    該用戶從未簽到

    發表於 2008-12-24 21:06:32 | 顯示全部樓層
    看完了 也看懂了

    不過就是不太了解能使用在哪= =

    謝謝大大的教學
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    郁悶
    2021-3-9 09:00 AM
  • 簽到天數: 25 天

    連續簽到: 1 天

    [LV.4]偶爾看看III

    發表於 2008-12-25 06:34:45 | 顯示全部樓層
    簡單的說是變相的陣列多維化
    因為EA的限制讓這功能很強大
    JA可以@a[n][n][n]
    但EA只能@a[n]
    n最大可以128...相對就是128*128*128....@a的陣列數組內可以達128*128*128這麼多


    setd @+"+getcharid(3)+"_"+getcharid(0)+"+$,"@A";
    @帳號編號_腳色編號$=@A


    set getd("@+"+getcharid(3)+"_"+getcharid(0)+""),1;
    @A當作變數來用
    @A=1


    可是這方式就不會拘限在128的限制內

    [ 本帖最後由 DIGE 於 2008-12-25 06:53 AM 編輯 ]
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2008-12-28 13:33:27 | 顯示全部樓層
    #11
    讓 陣 列 數 量 更 多 !?
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2010-9-5 08:41 PM
  • 簽到天數: 1 天

    連續簽到: 0 天

    [LV.1]初來乍到

    發表於 2009-1-1 12:54:41 | 顯示全部樓層
    覺得setd、getd()很好用啊∼
    (至少在ea很好用......)
    就把它拿來當陣列用時:
    不僅數值能超過127
    也沒也限制此"陣列"變數的性質
    無論是.、.@($)、@($)、#($)、#@($)、$($)、$@($)等等......
    都可以拿來做"陣列"......

    請參考我的腳本:(setd與getd()為核心功能,沒這兩種指令就不能運行了>.<)
    http://okayro.com/thread-84074-1-1.html

    [ 本帖最後由 yayeshaleio 於 2009-1-26 11:02 PM 編輯 ]
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    開心
    2019-8-18 04:57 PM
  • 簽到天數: 2148 天

    連續簽到: 1 天

    [LV.Master]伴壇終老

    發表於 2009-1-1 16:39:20 | 顯示全部樓層
    #13

    留 言 太 多 之 前 都 不 知 道 怎 辦 =口=
    回復 支持 反對

    使用道具 舉報

  • TA的每日心情
    難過
    2015-1-11 04:15 PM
  • 簽到天數: 63 天

    連續簽到: 1 天

    [LV.6]常住居民II

    發表於 2009-1-11 13:45:26 | 顯示全部樓層
    好讚的語法喔
    不過還是要實際去試試  研究  才能更進一步了解它到底有多好用=ㄦ=
    新手就是多看  多學  多嘗試><
    回復 支持 反對

    使用道具 舉報

    您需要登錄後才可以回帖 登錄 | 註冊

    本版積分規則

    Archiver|手機版|小黑屋|OK討論區

    GMT+8, 2024-4-20 09:22 AM , Processed in 0.054615 second(s), 19 queries , Gzip On.

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.

    快速回復 返回頂部 返回列表