灵符lingfu

soul-symphony-ling

↓ 0 downloads

Soul Symphony — Ling Edition. A spiritual 3D adventure in the soul realm: collect the letters of the world-song, clear the monster lattice, and duel in the arcade arena. Wind Waker-style toon renderer with volumetric light pools, SSAO, bloom and oil-slick tilt-shift — all ling-lang vectors.

Keywords game, 3d, toon, music, soul-symphony
lingfu install soul-symphony-ling
AuthorsLing Lin <taellinglin@gmail.com>
READMECode / FilesVersionsDependency GraphDependentsSecurityBuildsSettings

Code / Files (1947)

chapter1_preview.ling
# ─────────────────────────────────────────────────────────────────────────────
# chapter1_preview.ling — เล่นคัตซีนบทหนึ่งเดี่ยว ๆ (ไม่ต้องผ่านทิวทอเรียล/บอส)
#   รัน:  ling run chapter1_preview.ling
#   ถ้า JIT ล่ม (TryFromIntError/NegOverflow ใน cranelift):
#         ling run --interp chapter1_preview.ling
#   [enter/space] ข้าม · [esc] ออก · จบเองที่ ~21 วิ
# ─────────────────────────────────────────────────────────────────────────────
ใช้ "instruments/gong"
ใช้ "instruments/yinyang"
ใช้ "instruments/chime"
ใช้ "instruments/gamelan"
ใช้ "instruments/fanfare"
ใช้ "game/queen_model"
ใช้ "game/title"
ใช้ "game/scenes/chapter1"

bind เล่นพรีวิว = do {
    เปิดหน้าต่างเต็มจอ("Chapter 1 — Marching Meadow (preview)")
    # โพสต์เชนเดียวกับบูตเกม → ภาพตรงกับของจริง
    tone_smooth(0);  tone_bezier_off();  โทนขอบนุ่ม(0.32, 0.65)
    ตั้งบลูม(0.5, 0.74)
    ลบรอยหยัก(1)

    bind liq = liquid_new(16.0, 16.0)
    liquid_rainbow(liq, 1.0)
    bind km = mesh_load("game/king.lmesh")
    bind qm = mesh_load("game/queen.lmesh")
    bind เพลง = โหลดเพลง("music/Theme of the Marching Meadow.wav")
    bind ยาวเพลง = ความยาวเพลง(เพลง)
    เล่นเพลง(เพลง);  ระดับเพลง(0.65)

    bind เริ่มเวลา = เวลาปัจจุบัน()
    bind บรรทัดก่อน = 0.0 - 1.0
    bind จบ = 0.0
    ขณะที่ จบ < 0.5 {
        ถ้า หน้าต่างเปิดอยู่() {
            bind ผล = เล่นฉากบทหนึ่ง(เวลาปัจจุบัน() - เริ่มเวลา, 0.0, บรรทัดก่อน, 1, 0.65, 0.8, เพลง, ยาวเพลง, km, qm, liq)
            bind บรรทัดก่อน = list_get(ผล, 0)
            ถ้า list_get(ผล, 1) > 0.5 { bind จบ = 1.0 }
        }
        มิฉะนั้น { bind จบ = 1.0 }
    }
    หยุดเพลง()
    print_color(2, "chapter 1 preview finished")
}

← Back to index