[System] Swap Hero System

Thảo luận trong 'World Editor' bắt đầu bởi vuongkkk, 14/5/11.

  1. vuongkkk

    vuongkkk T.E.T.Я.I.S

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    Yêu cầu khi sử dụng system
    • Tạo biến mảng PlayerHero với index là player number
    • Khi chọn hero thì thiết lập PlayerHero[player number] = hero vừa chọn
    Tác dụng
    • Chuyển sở hữu của các hero đã được chọn cho các player
    • Chuyển cả đồ khi chuyển sở hữu hero
    Ưu điểm
    • = GUI ai cũng hiểu
    • Swap theo team, 2 player ở 2 team khác nhau không đổi được hero
    • Đã check xem đã có hero được chọn chưa (nếu biến PlayerHero = No Unit coi như chưa chọn hero)
    • Nếu hero của 1 trong 2 player muốn đổi hero cho nhau đang die thì sẽ không swap

    Commands
    • -swap # để đổi hoặc đề nghị đổi tướng cho player # (# trong khoảng từ 1 - 5)
    • -swap all để đổi (sẽ thực hiện đổi luôn với người chơi đầu tiên tìm thấy là muốn đổi tướng cho trigger player)
      hoặc đề nghị đổi tướng cho các player khác trong cùng team

    Cách đưa vào map bạn
    - B1: Bật/Check option Auto create unknown variables while pasting trigger dataFile/Preferences...
    - B2: Copy unit Swap Item Dum qua map bạn.
    - B3: Đưa các trigger sau vào 1 folder rồi copy folder đó qua map bạn:
    Setup
    Swap all team 1
    Swap all team 2
    Swap Command team 1
    Swap Command team 2
    Swap Begin
    Swap Action
    Swap Hero
    Swap Item
    - B3: Sửa tên trigger Setup -> SwapSetup và xóa hết các actions trừ 3 dòng:
    Mã:
    Set HSS_Player[3] = Neutral Passive
    Unit - Create 1 Swap Item Dum for Neutral Passive at (Center of (Playable map area)) facing Default building facing degrees
    [COLOR="#FF0000"](Nhớ chỉnh lại đoạn này unit type cho đúng với [B]Swap Item Dum[/B])[/COLOR]
    Set SwapBrideUnit = (Last created unit)
    - B4: Event nào là event xác định hero(chưa có thì tạo event phù hợp) thì thiết lập PlayerHero[player number] = hero vừa chọn.

    Map demo infos
    • Map có 6 player mỗi team trong đó 1 cố định là do computer điều khiển
    • Player 1 và 7 là do com điều khiển còn các player khác là free có thể chọn được
    • Mỗi team thì người được đánh số từ 1-5 (ko tính player mặc định do computer khiển), ở vị trí đầu tiền tương đương 1 => -swap 1 để đổi hero với player đó
      Ví dụ người chơi ở vị trí thứ 3 trong team 2 (player 10) => -swap 3 để đổi hero với player đó

    Cách test trong map demo
    Nếu bạn chơi 1 mình thì chơi ở vị trí player 2 rồi nhấn Esc sẽ tương đương với việc player 3 gõ -swap all

    Đôi lời
    Do mình thấy có 1 số request trên forum về swap hero và nhận thấy cũng không khó để làm cái nà nên mình làm 1 cái thôi :P
    Khi hiều cách thức rồi bạn có thể thay đổi số lượng người mỗi team cũng như số để swap
    Title của post là system nhưng thực ra là đoạn trigger đơn giản thôi. Còn gọi là system bởi vì nó là chức năng phụ trong map

    Download
    • gamevn: Đính kèm bên dưới
    • mediafire: ở đây
     

    Các file đính kèm:

    Chỉnh sửa cuối: 18/7/12
  2. KuKulKan

    KuKulKan T.E.T.Я.I.S

    Tham gia ngày:
    2/8/09
    Bài viết:
    629
    Nơi ở:
    Quận Thủ Đức, Thành phố Hồ Chí Minh
    hê hê, đang cần cái này đây :D...lấy về Test cái nào thanks nhé
     
  3. AzuhaSky

    AzuhaSky T.E.T.Я.I.S

    Tham gia ngày:
    30/5/10
    Bài viết:
    550
    Nơi ở:
    WE Box
    Cảm ơn nhiều nhé!"Kiến thức uyên bác"!:)
     
  4. arron2

    arron2 Legend of Zelda

    Tham gia ngày:
    20/1/09
    Bài viết:
    1,007
    +Rep thôi nào, post kinh nghiệm đấy :)
     
  5. Tom_Kazansky

    Tom_Kazansky

    Tham gia ngày:
    28/12/06
    Bài viết:
    3,454
    Nơi ở:
    Hà Nội
    Về cách trình bày:
    ¯¯¯¯¯¯¯¯¯¯¯¯¯¯
    cái này phải là "yêu cầu khi sử dụng system" mới đúng

    có nên là "cách sử dụng"?

    Về hoạt động:
    ¯¯¯¯¯¯¯¯¯¯¯
    vì phải test multi-player nên tôi chưa có điều kiện
    ai có thể test hãy cho xác nhận >:D<
     
  6. vuongkkk

    vuongkkk T.E.T.Я.I.S

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    ^
    @Tom_Kazansky:vì phải test multi-player nên tôi chưa có điều kiện
    ai có thể test hãy cho xác nhận


    Em với bạn đã test swap thường rồi, còn test swap all thì có test case(đó chính là cái Cách test map)
    Khi player 2 nhấn Esc thì tương đương việc player 3 swap all vì thực ra test trigger đó cop nguyên si từ swap all chỉ thay đổi mỗi Player number of Trigger Player = 3 thôi. Cái này e đã test và đã chạy. Nhưng mà bạn nào đã test multi-players thì cho cái xác thực giùm nhé

    Swap chỉ có tác dụng khi đã thiết lập cho biến mảng PlayerHero với index là player number

    Cái này là biến mảng unit array. Nói chung là chỉ áp dụng cái swap này được cho 1 hero với mỗi player (bằng cách thiết lập giá trị cho PlayerHero[Player number] = hero đó)

    @Tom_Kazansky:cái này phải là "yêu cầu khi sử dụng system" mới đúng | có nên là "cách sử dụng"?

    Cái này thì tùy cách hiểu mỗi người cũng như cách em diễn giải thôi. Cám ơn anh Tom góp ý nhiều thế :))
     
    Chỉnh sửa cuối: 16/5/11
  7. vuongkkk

    vuongkkk T.E.T.Я.I.S

    Tham gia ngày:
    22/5/10
    Bài viết:
    588
    Nơi ở:
    Hà Nội
    Update thêm cách đưa System vào map

    Việc chọn tướng thế nào ko ảnh hưởng đến system
    Quan trọng là phải set biến PlayerHero[player number]= hero đã chọn

    Nếu ko muốn system hoạt động thì
    Mã:
    Trigger - Turn off Swap all team 1
    Trigger - Turn off Swap all team 2
    Trigger - Turn off Swap Command team 1
    Trigger - Turn off Swap Command team 2
     

Chia sẻ trang này