Cụ thể, tôi đang nghĩ về C # và XNA, và rõ ràng là trên Windows. Giả sử tôi có trò chơi chính là trò chơi XNA bình thường, nhưng đến một lúc nào đó tôi muốn chuyển sang một trò chơi nhỏ cũng được triển khai trong XNA nhưng hoàn toàn độc lập với trò chơi của tôi.
Có cách nào tôi có thể chuyển sang và quay lại giữa hai trò chơi, trong khi sử dụng lại cùng một cửa sổ không? Và tốt nhất là giữ trạng thái cũ trong bộ nhớ, mặc dù tôi cũng có thể thực hiện việc ghi kiên trì này vào một tệp.
Và khi quay lại trò chơi ban đầu, có cách nào tôi có thể truy cập vào giá trị được trả về bằng phương thức chính của trò chơi mini không? Chẳng hạn, 1 hoặc 0 tùy thuộc vào việc người chơi có xóa trò chơi mini hay không.
Andrew Russell đã viết:
Bạn nên xây dựng trò chơi nhỏ và trò chơi chính của mình thành các lớp riêng biệt trong cùng một chương trình. Mỗi lớp nên có các phương thức Cập nhật, Vẽ, Khởi tạo, v.v. Sau đó, bạn nên có một số loại trình điều khiển chính để gọi các phương thức đó chỉ có một trò chơi hoạt động tại một thời điểm (điều này cũng có thể đơn giản là trong lớp trò chơi chính của bạn).
Cảm ơn câu trả lời. Gợi ý của bạn là những gì tôi sẽ làm trong một tình huống trò chơi bình thường - một trong đó tôi là người tạo ra tất cả các trò chơi nhỏ và nội dung của chúng.
Nhưng đây không phải là một trò chơi, mà là một công cụ của nhà sản xuất trò chơi để tạo ra các cuộc phiêu lưu đồ họa và người dùng cuối có thể cảm thấy cần phải cắm các trò chơi nhỏ bên ngoài để đáp ứng với các sự kiện trò chơi nhất định.
Công cụ nội bộ cũ hơn mà tôi đang cố gắng thay thế đã được thực hiện trong Flash và đã giải quyết vấn đề này chỉ bằng cách tải SWF bên trong SWF chính. Nó hoạt động tốt cho hầu hết các trường hợp. Tôi đang cố gắng làm điều gì đó tương tự nhưng với XNA bây giờ.
Nhưng theo con tàu hoặc suy nghĩ của bạn, có lẽ tôi có thể tạo ra một hội đồng riêng có chứa một lớp cơ sở hoặc giao diện chung cho tất cả các trò chơi nhỏ và biên dịch nó dưới dạng dll. Sau đó, người dùng sẽ tham chiếu thư viện đó, thực hiện giao diện và biên dịch vào thư viện của riêng mình có thể được tải bởi công cụ khi chạy và thực thi như một trạng thái riêng biệt trong trò chơi chính. Tôi có thiếu một số ẩn ý?