Tôi đang phát triển một công cụ trò chơi đơn giản (trong C #, nếu có vấn đề) và tôi không thể nghĩ ra một cách đủ tốt để thực hiện kịch bản về mặt kiến trúc.
Đây là một chiến lược theo lượt đơn giản với các hình ảnh động độc lập, tùy chỉnh logic cho các trận chiến. Nó có một lớp kiến trúc toàn cầu cho các hệ thống / công cụ cấp thấp và quan trọng nhất là hai mô-đun chính - logic và chế độ xem trò chơi - giao tiếp bằng trình quản lý sự kiện.
Và vấn đề là, tôi thực sự muốn các kịch bản ảnh hưởng đến cả hai thứ liên quan đến logic trò chơi (thay đổi thông số đơn vị, v.v.) và những thứ liên quan đến chế độ xem trò chơi, chẳng hạn như hoạt hình / đối thoại đặc biệt cho các trận chiến có thể phụ thuộc vào một số kịch bản kích hoạt.
(Thành thật mà nói, lý tưởng là tôi muốn kịch bản kiểm soát luồng trò chơi, chỉ để lại cơ chế / đồ họa cốt lõi cho logic / chế độ xem, nhưng tôi chưa quen với điều này, vì vậy tôi không chắc mình có thể làm điều đó ngay bây giờ)
Tôi đã nghĩ đến ba lựa chọn:
Chỉ cần để kịch bản sống theo logic, nhưng hãy cho nó biết về khía cạnh đồ họa của trò chơi. Nhưng điều này sẽ làm cho sự phân chia logic / khung nhìn rất mơ hồ, sẽ không ...
Tạo kịch bản thành một mô-đun riêng biệt sẽ trao đổi các sự kiện với những người khác bằng cùng một trình quản lý sự kiện. Nhưng điều này đòi hỏi phải rất cẩn thận về việc đồng bộ hóa sự kiện, tôi đoán vậy ... và cũng thêm rất nhiều loại sự kiện cho người quản lý. (Tuy nhiên, yêu thích cá nhân)
Làm cho kịch bản một mô-đun trên tất cả, để nó có thể ảnh hưởng trực tiếp / gọi các chức năng của logic / khung nhìn. Điều này cho phép một chức năng vốn đã rộng hơn với chi phí sắp xếp toàn bộ sơ đồ trao đổi sự kiện và sợ rằng tập lệnh có thể phá vỡ mọi thứ ngay cả khi nó thực sự không nên.
Vì vậy, tôi không thể quyết định một trong những điều này cũng như không nghĩ ra cách nào tốt hơn để chèn mô-đun kịch bản ... Bất kỳ đề xuất hoặc liên kết hữu ích nào?
Cảm ơn bạn!
Ps cảm ơn vì đã di chuyển câu hỏi, không biết có một phần chuyên biệt dành cho gamedev