עזרה מישהוא מבין בקודים?

  • הוסף לסימניות
  • #1
אם מישהוא יכול לעשות לי מהקוד הזה קישור להורדה אני אשמח תודה


world = {
"כיכר הכניסה": {
"description": "אתם עומדים בכיכר הכניסה המרכזית של העיר העתיקה. שער גדול ניצב מצפון, ושבילים מתפצלים מזרחה ומערבה.",
"items": [],
"characters": ["קבוצת אנשים לבושים בלבוש עתיק"],
"exits": {"צפון": "שער העיר", "מזרח": "השוק הישן", "מערב": "החצר האחורית", "דרום": "הנמל"}
},
"שער העיר": {
"description": "שער אבן עתיק ומרשים. נראה שפעם הגן על הכניסה הראשית לעיר.",
"items": [],
"characters": [],
"exits": {"דרום": "כיכר הכניסה"}
},
"השוק הישן": {
"description": "שוק הומה אדם, דוכנים צבעוניים מציעים מגוון סחורות. אוויר מלא בריחות תבלינים וקולות רוכלים.",
"items": ["ארנק קטן"],
"characters": ["מוכר תבלינים", "קבצן", "כמה אנשים לבושים בלבוש מסורתי"],
"exits": {"מערב": "כיכר הכניסה", "מזרח": "המקדש הנטוש"}
},
"החצר האחורית": {
"description": "חצר מוזנחת עם באר יבשה וכמה ארגזים ישנים.",
"items": ["חבל קצר"],
"characters": [],
"exits": {"מזרח": "כיכר הכניסה"}
},
"המקדש הנטוש": {
"description": "מקדש עתיק ועזוב, צמחייה פראית מטפסת על קירותיו המתפוררים. נשמעים צלילי רוח חזקים.",
"items": [],
"characters": ["נזיר זקן", "שומר המקדש הזועם"],
"exits": {"מערב": "השוק הישן", "פנים": "חדר סודי במקדש"}
},
"חדר סודי במקדש": {
"description": "חדר קטן וחשוך בתוך המקדש הנטוש. על הרצפה פזורים חפצים מוזרים.",
"items": ["אוצר עתיק"],
"characters": [],
"exits": {"חוץ": "המקדש הנטוש"}
},
"הנמל": {
"description": "נמל שוקק חיים, רעש גלים מתנפצים על הרציף וקריאות מלחים באוויר. ספינות רבות עוגנות כאן.",
"items": ["חבל עבה", "תיבת עץ"],
"characters": ["ספן שיכור", "סוחר", "קבוצת אנשים לבושים בלבוש עתיק"],
"exits": {"צפון": "כיכר הכניסה"}
}
}

current_location = "כיכר הכניסה"
inventory = ["חרב ישנה"] # השחקן מתחיל עם חרב
tasks = {}
has_defeated_guardian = False

def give_task(task_name, description):
tasks[task_name] = {"status": "לא התחיל", "description": description}
print(f"קיבלת משימה חדשה: {description}")

def display_location(location):
print(world[location]["description"])
if world[location]["items"]:
print(f"בחדר ישנם הפריטים הבאים: {', '.join(world[location]['items'])}")
if world[location]["characters"]:
characters_in_room = [char for char in world[location]["characters"] if char != "שומר המקדש הזועם" or not has_defeated_guardian]
if characters_in_room:
print(f"בחדר נמצאות הדמויות הבאות: {', '.join(characters_in_room)}")
if location == "הנמל":
print("בנמל עוגנות ספינות רבות בגדלים שונים.")
if inventory:
print(f"בתיק שלך ישנם הפריטים הבאים: {', '.join(inventory)}")
if tasks:
print("המשימות שלך:")
for task_name, task_info in tasks.items():
print(f"- {task_info['description']} (סטטוס: {task_info['status']})")

# מתן המשימה בתחילת המשחק
give_task("מצא את האוצר העתיק", "עליך למצוא את האוצר העתיק החבוי בחדר הסודי שבמקדש הנטוש.")

while True:
display_location(current_location)
command = input("מה תרצה לעשות? (צ, ד, מ, מע, פ, ח, אוסף [פריט], השתמש [פריט], דבר עם [דמות], התקפה, יציאה): ").lower().split()

if not command:
continue

action = command[0]

if action == "יציאה":
break
elif action in ["צ", "ד", "מ", "מע", "פ", "ח"]:
direction = ""
if action == "צ":
direction = "צפון"
elif action == "ד":
direction = "דרום"
elif action == "מ":
direction = "מזרח"
elif action == "מע":
direction = "מערב"
elif action == "פ":
direction = "פנים"
elif action == "ח":
direction = "חוץ"

if current_location == "המקדש הנטוש" and direction == "פנים" and not has_defeated_guardian:
print("שומר המקדש הזועם חוסם את המעבר!")
elif direction in world[current_location]["exits"]:
current_location = world[current_location]["exits"][direction]
else:
print("אין מעבר בכיוון הזה.")
elif action == "אוסף":
if len(command) > 1:
item_name = " ".join(command[1:])
if item_name in world[current_location]["items"]:
inventory.append(item_name)
world[current_location]["items"].remove(item_name)
print(f"אספת את {item_name}.")
else:
print(f"אין פריט כזה '{item_name}' בחדר.")
else:
print("איזה פריט תרצה לאסוף?")
elif action == "השתמש":
if len(command) > 1:
item_name = " ".join(command[1:])
if item_name in inventory:
print(f"השתמשת ב '{item_name}'.")
# בדיקה ספציפית למשימת האוצר
if item_name == "אוצר עתיק" and current_location == "חדר סודי במקדש" and "מצא את האוצר העתיק" in tasks and tasks["מצא את האוצר העתיק"]["status"] != "הושלם":
tasks["מצא את האוצר העתיק"]["status"] = "הושלם"
print("הצלחת למצוא את האוצר העתיק! המשימה הושלמה.")
else:
print(f"אין לך את הפריט '{item_name}' בתיק.")
else:
print("באיזה פריט תרצה להשתמש?")
elif action == "דבר":
if len(command) > 2 and command[1] == "עם":
character_name = " ".join(command[2:])
if character_name in world[current_location]["characters"]:
print(f"דיברת עם {character_name}.")
if character_name == "שומר המקדש הזועם" and not has_defeated_guardian:
print("השומר נוהם עליך ומאיים!")
elif character_name == "נזיר זקן":
print("הנזיר ממלמל מילים עתיקות.")
else:
print("הדמות לא אומרת הרבה.")
else:
print(f"אין דמות כזו '{character_name}' בחדר.")
else:
print("עם מי תרצה לדבר?")
elif action == "התקפה":
if current_location == "המקדש הנטוש" and "שומר המקדש הזועם" in world[current_location]["characters"] and "חרב ישנה" in inventory and not has_defeated_guardian:
print("שלפת את חרבך והסתערת על השומר!")
print("במהלך הקרב המתוח, הצלחת להביס את שומר המקדש הזועם.")
has_defeated_guardian = True
world[current_location]["characters"].remove("שומר המקדש הזועם")
elif current_location == "המקדש הנטוש" and not has_defeated_guardian:
print("אין כאן מישהו להילחם בו.")
elif "חרב ישנה" not in inventory:
print("אין לך חרב כדי לתקוף!")
elif has_defeated_guardian:
print("השומר כבר הובס.")
else:
print("פקודה לא מוכרת.")

print("תודה ששיחקתם!")
 
  • הוסף לסימניות
  • #2
GPT:

כדי להפוך את הקוד שלך ללינק, פשוט צריך להכניס אותו לתוך קובץ ולשלוח אותו כקובץ. נכון לעכשיו, אין לי אפשרות ליצור לינק ישיר מתוך הקוד כאן, אבל הנה הדרך איך לעשות את זה:


  1. שמור את הקוד בקובץ: לדוגמה, תוכל לשמור את הקוד כקובץ .py (לדוגמה game.py).
  2. העלה את הקובץ לפלטפורמה לשיתוף קבצים: אפשר להעלות את הקובץ ל-GitHub, Dropbox, Google Drive או כל פלטפורמת שיתוף אחרת.
  3. שתף את הלינק: לאחר העלאת הקובץ, תוכל לקבל לינק לשיתוף ולשלוח אותו לכל אחד.
 
  • הוסף לסימניות
  • #3
אני מסתבך אם מישהוא יכול לעשות את זה בשבילי אני אשמח
 
  • הוסף לסימניות
  • #4
נסתי המון זמן להפעיל ואפשר לשחק את זה רק בשורת הפקודה (נמצא באתחל) אחרי שמתקינים פייתון (תוכנה של תכנות),
אבל זה משחק בלי גרפיקה ובלי כפתורים מסודרים לכן אפשר לשחק את זה רק בשורת הפקודה בצורה לא נוחה, כלומר זה משחק שלא גמור וזה קוד התחלתי של משחק.
 
  • הוסף לסימניות
  • #5
נסתי המון זמן להפעיל ואפשר לשחק את זה רק בשורת הפקודה (נמצא באתחל) אחרי שמתקינים פייתון (תוכנה של תכנות),
אבל זה משחק בלי גרפיקה ובלי כפתורים מסודרים לכן אפשר לשחק את זה רק בשורת הפקודה בצורה לא נוחה, כלומר זה משחק שלא גמור וזה קוד התחלתי של משחק.
אפשר כמה תמונות מסך מהמשחק
תודה
 
  • הוסף לסימניות
  • #6
נסתי המון זמן להפעיל ואפשר לשחק את זה רק בשורת הפקודה (נמצא באתחל) אחרי שמתקינים פייתון (תוכנה של תכנות),
אבל זה משחק בלי גרפיקה ובלי כפתורים מסודרים לכן אפשר לשחק את זה רק בשורת הפקודה בצורה לא נוחה, כלומר זה משחק שלא גמור וזה קוד התחלתי של משחק.
אם אתה יכול לנסות גם את הקוד הזה שהוא פחות התחלתי

import tkinter as tk
from tkinter import PhotoImage

world = {
"החדר בבית העתיק": {
"description": "אתם מתעוררים בחדר השינה שלכם בבית העתיק. זיכרונות מעורפלים מחלום על אוצר אבוד מרצדים בראשכם. אור חלש חודר דרך החלון ומאיר מיטה ישנה, חרב תלויה על הקיר, שידה ועליה מספר מפות. דלת עץ מובילה החוצה.",
"items": ["חרב ישנה", "מפה קרועה", "מפה מאוירת"],
"characters": {},
"exits": {"חוץ": "חצר הבית העתיק"}
},
"חצר הבית העתיק": {
"description": "אתם בחצר האחורית של הבית העתיק. צמחייה פראית מטפסת על הקירות, ושביל אבן קטן מוביל לשער עץ.",
"items": [],
"characters": {},
"exits": {"פנים": "החדר בבית העתיק", "דרום": "כיכר הכניסה", "מזרח": "רחוב הבתים העתיקים - מערב"}
},
"כיכר הכניסה": {
"description": "אתם עומדים בכיכר הכניסה המרכזית של העיר העתיקה. המולת רחוב סואנת מקיפה אתכם. שער אבן גדול ניצב מצפון, ושבילים מתפצלים מזרחה ומערבה.",
"items": [],
"characters": {"קבוצת אנשים לבושים בלבוש עתיק": {"hit_points": 3}},
"exits": {"צפון": "שער העיר", "מזרח": "השוק הישן", "מערב": "החצר האחורית", "דרום": "הנמל",
"מערב": "רחוב הבתים העתיקים - מזרח", "צפון-מערב": "חצר הבית העתיק"}
},
"רחוב הבתים העתיקים - מזרח": {
"description": "אתם ברחוב צר מרוצף אבן, משני צדדיו בתים עתיקים עם חלונות סגורים. נשמעים צלילי רוח חלשים.",
"items": [],
"characters": {},
"exits": {"מערב": "כיכר הכניסה", "מזרח": "רחוב הבתים העתיקים - מערב"}
},
"רחוב הבתים העתיקים - מערב": {
"description": "חלק זה של רחוב הבתים העתיקים נראה מעט מוזנח יותר. דלתות עץ רקובות וחלונות שבורים מעידים על הזנחה.",
"items": ["מפתח חלוד"],
"characters": {},
"exits": {"מזרח": "רחוב הבתים העתיקים - מזרח", "מערב": "חצר הבית העתיק"}
},
"שער העיר": {
"description": "שער אבן עתיק ומרשים. נראה שפעם הגן על הכניסה הראשית לעיר.",
"items": [],
"characters": {},
"exits": {"דרום": "כיכר הכניסה", "צפון": "תחנת משטרה עתיקה"}
},
"תחנת משטרה עתיקה": {
"description": "אתם נמצאים בתחנת משטרה עתיקה. שוטרים הלבושים במדי עור ונושאים חרבות ארוכות מסתובבים כאן.",
"items": [],
"characters": {"שוטר חמוש בחרב": {"hit_points": 3}, "סמל משטרה זועף": {"hit_points": 3}},
"exits": {"דרום": "שער העיר", "פנים": "מסדרון תחנת המשטרה"}
},
"מסדרון תחנת המשטרה": {
"description": "מסדרון ארוך וחשוך בתוך תחנת המשטרה. דלתות עץ ישנות משני הצדדים מטילות צללים ארוכים.",
"items": [],
"characters": {},
"exits": {"חוץ": "תחנת משטרה עתיקה", "מזרח": "חדר המפקד"}
},
"חדר המפקד": {
"description": "חדר גדול ומרוהט בפאר. שולחן עץ מגולף ניצב במרכז, ומאחוריו כסא עור גדול ומרשים.",
"items": ["מפה ישנה"],
"characters": {},
"exits": {"מערב": "מסדרון תחנת המשטרה"}
},
"השוק הישן": {
"description_day": "שוק הומה אדם, דוכנים צבעוניים מציעים מגוון סחורות. אוויר מלא בריחות תבלינים וקולות רוכלים.",
"description_night": "השוק שקט וריק יחסית. רוב הדוכנים סגורים, ורק אורות בודדים מרצדים.",
"items": ["ארנק קטן"],
"characters_day": {"מוכר תבלינים": {"hit_points": 3}, "קבצן": {"hit_points": 3}, "כמה אנשים לבושים בלבוש מסורתי": {"hit_points": 3}},
"characters_night": {"שני גנבים מפוקפקים": {"hit_points": 3}},
"exits": {"מערב": "כיכר הכניסה", "מזרח": "המקדש הנטוש"}
},
"החצר האחורית": {
"description": "חצר מוזנחת עם באר יבשה וכמה ארגזים ישנים. עורבים מקננים על הגג הרעוע.",
"items": ["חבל קצר"],
"characters": {},
"exits": {"מזרח": "כיכר הכניסה"}
},
"המקדש הנטוש": {
"description": "מקדש עתיק ועזוב, צמחייה פראית מטפסת על קירותיו המתפוררים. נשמעים צלילי רוח חזקים.",
"items": [],
"characters": {"נזיר זקן": {"hit_points": 3}, "שומר המקדש הזועם": {"hit_points": 3}},
"exits": {"מערב": "השוק הישן", "פנים": "חדר סודי במקדש"}
},
"חדר סודי במקדש": {
"description": "חדר קטן וחשוך בתוך המקדש הנטוש. אבק עבה מרחף באוויר, וצללים מוזרים רוקדים על הקירות.",
"items": ["אוצר עתיק"],
"characters": {},
"exits": {"חוץ": "המקדש הנטוש"}
},
"הנמל": {
"description": "נמל שוקק חיים, רעש גלים מתנפצים על הרציף וקריאות מלחים באוויר. ספינות רבות עוגנות כאן.",
"items": ["חבל עבה", "תיבת עץ"],
"characters": {"ספן שיכור": {"hit_points": 3}, "סוחר": {"hit_points": 3}, "קבוצת אנשים לבושים בלבוש עתיק": {"hit_points": 3}},
"exits": {"צפון": "כיכר הכניסה"}
}
}

player_hit_points = 7
mission_start_location = "החדר בבית העתיק"
inventory = []
tasks = {}
has_defeated_guardian = False
current_image = None
image_label = None
window = tk.Tk()
window.title("הרפתקה טקסטואלית")
game_time = 0
is_day = True

health_bar_height = 20
health_bar_canvas = tk.Canvas(window, height=health_bar_height, bg="gray")
health_bar_canvas.pack(fill=tk.X)

def update_health_bar():
health_bar_canvas.delete("health")
health_ratio = player_hit_points / 7.0
bar_width = int(health_bar_canvas.winfo_width() * health_ratio)
health_bar_canvas.create_rectangle(0, 0, bar_width, health_bar_height, fill="green", tags="health")
health_text = f"חיים: {player_hit_points}/7"
health_bar_canvas.create_text(bar_width + 5, health_bar_height / 2, text=health_text, anchor=tk.W, fill="black")

def display_intro():
intro_text = """
ברוכים הבאים להרפתקה טקסטואלית בעיר העתיקה!

הסיפור:
אתם מתעוררים בביתכם העתיק עם תחושה חזקה שמסתתר סוד הקשור לאוצר אבוד.
חלומות חוזרים על אי קטן ורמזים עתיקים מעוררים בכם את הרצון לצאת למסע.
המטרה הראשונה שלכם היא לחקור את ביתכם ולמצוא רמזים שיעזרו לכם לאתר מפה לאוצר.
המסע עשוי להוביל אתכם למקומות מסוכנים ולפגוש דמויות שונות.

איך לשחק:
המשחק מתנהל באמצעות פקודות טקסט שתקלידו. הנה כמה פקודות בסיסיות:
- צ, ד, מ, מע, פ, ח: תנועה לכיוונים צפון, דרום, מזרח, מערב, פנים, חוץ.
- אוסף [פריט]: לאסוף פריט מהחדר.
- השתמש [פריט]: להשתמש בפריט מהתיק שלכם.
- דבר עם [דמות]: לנסות לדבר עם דמות שנמצאת בחדר.
- התקפה: לנסות לתקוף (במצבים מסוימים).
- מכה: לבצע מכה עם הנשק (אם יש).
- יציאה: לסיים את המשחק.

בנוסף, ישנם כפתורים גרפיים עבור כיווני התנועה. ניתן גם ללחוץ על מקש 'J' כדי לבצע מכה עם החרב (אם היא בתיק).

שימו לב לשעה ביום (יום/לילה), מכיוון שהיא יכולה להשפיע על מה שקורה בעולם.
יש לכם 7 נקודות חיים. קבלת 7 מכות תוביל לסיום זמני וחזרה לנקודת ההתחלה של המשימה.

בהצלחה בהרפתקה שלכם!
"""
print(intro_text)
update_health_bar()

def player_take_damage(damage=1):
global player_hit_points, current_location
player_hit_points -= damage
print(f"קיבלתם פגיעה! נקודות החיים הנוכחיות: {player_hit_points}")
update_health_bar()
if player_hit_points <= 0:
print("הפסדתם! חוזרים לנקודת ההתחלה של המשימה.")
player_hit_points = 7
current_location = mission_start_location
update_health_bar()
display_location(current_location)

def handle_j_press(event):
global current_location
if "חרב ישנה" in inventory:
print("נפנפתם בחרבכם.")
if world[current_location].get("characters"):
character_names = list(world[current_location]["characters"].keys())
if character_names:
target = character_names[0]
world[current_location]["characters"][target]["hit_points"] -= 1
print(f"פגעתם ב{target}. נותרו לה {world[current_location]['characters'][target]['hit_points']} נקודות פגיעה.")
if world[current_location]["characters"][target]["hit_points"] <= 0:
print(f"הבסתם את {target}!")
del world[current_location]["characters"][target]
if target == "שוטר חמוש בחרב" or target == "סמל משטרה זועף":
print(f"{target} זועם ותוקף בחזרה!")
player_take_damage()
elif target == "שני גנבים מפוקפקים":
print("הגנבים נרתעים לאחור בפחד.")
else:
print("אין כאן אף אחד להכות בו.")
else:
print("אין כאן אף אחד להכות בו.")
else:
print("אין לכם חרב כדי לבצע מכה.")
display_location(current_location)
update_health_bar()

def give_task(task_name, description):
tasks[task_name] = {"status": "לא התחיל", "description": description}
print(f"קיבלת משימה חדשה: {description}")

def display_location(location):
global current_image, image_label, player_hit_points

time_of_day = "יום" if is_day else "לילה"
current_characters = {}
if location == "השוק הישן":
description_key = "description_day" if is_day else "description_night"
print(world[location][description_key])
characters_key = "characters_day" if is_day else "characters_night"
if world[location].get(characters_key):
current_characters.update(world[location][characters_key])
else:
print(world[location]["description"])
current_characters.update(world[location].get("characters", {}))
if location == "המקדש הנטוש" and has_defeated_guardian:
if "שומר המקדש הזועם" in current_characters:
del current_characters["שומר המקדש הזועם"]

if current_characters:
character_names = list(current_characters.keys())
print(f"בחדר נמצאות הדמויות הבאות: {', '.join(character_names)}")

try:
image = PhotoImage(file=f"{location}.png")
if image_label:
image_label.config(image=image)
image_label.image = image
else:
image_label = tk.Label(window, image=image)
image_label.pack()
current_image = image
except tk.TclError:
if image_label:
image_label.config(image="")
print(f"אין תמונה עבור {location}.")

if world[location]["items"]:
print(f"בחדר ישנם הפריטים הבאים: {', '.join(world[location]['items'])}")
if inventory:
print(f"בתיק שלך ישנם הפריטים הבאים: {', '.join(inventory)}")
if tasks:
print("המשימות שלך:")
for task_name, task_info in tasks.items():
print(f"- {task_info['description']} (סטטוס: {task_info['status']})")

print(f"השעה: {game_time % 24:02d}:00 ({time_of_day})")
print(f"נקודות חיים: {player_hit_points}")
update_health_bar()

def move(direction):
global current_location
if current_location == "המקדש הנטוש" and direction == "פנים" and not has_defeated_guardian:
print("שומר המקדש הזועם חוסם את המעבר!")
player_take_damage()
elif direction in world[current_location]["exits"]:
current_location = world[current_location]["exits"][direction]
display_location(current_location)
advance_time()
else:
print("אין מעבר בכיוון הזה.")

def advance_time():
global game_time, is_day
game_time += 1
if game_time % 24 == 0:
is_day = not is_day
print("היום התחלף ל" + ("לילה" if not is_day else "יום") + ".")

window.bind('j', handle_j_press)

button_frame = tk.Frame(window)
button_frame.pack()

tk.Button(button_frame, text="
 
  • הוסף לסימניות
  • #7
נראה שיש פה קוד חלקי ולא משהו מוגמר..
בכל אופן, כל עוד הקוד הוא של קובץ אחד אפשר להריץ את זה באתרים חינמיים שנותנים אפשרות של הרצה בפייתון
 
  • הוסף לסימניות
  • #8
נראה שיש פה קוד חלקי ולא משהו מוגמר..
בכל אופן, כל עוד הקוד הוא של קובץ אחד אפשר להריץ את זה באתרים חינמיים שנותנים אפשרות של הרצה בפייתון
אתה יכול לעשות את זה בשבילי אני מסתבך תודה
 
  • הוסף לסימניות
  • #9
הכנסתי לקובץ בסיומת txt ושיניתי לסיומת py.
יותר פשוט מזה?
 

קבצים מצורפים

  • משחק.rar
    KB 2.2 · צפיות: 19
  • הוסף לסימניות
  • #11
זה לא משהו שאפשר לשחק בו ממש, כל משחק מורכב מכמה שפות של קודים,
יש קוד ראשון של מה המשחק יעשה ויש עוד קודים של גרפיקה כדי שיהיה כפתורים ללחוץ (חשוב למשחק),
כשיש רק את הקוד הזה אי אפשר לשחק איתו בצורה נוחה ותקינה כמו בתמונה המצורפת, חייב שיהיה גרפיקה למשחק אם אין הדרך לשחק היא להתקין תוכנה של פייתון ולהשתמש בשורת הפקודה באתחל כמו בתמונה שזה ממש לא אפשרי
תמונה1.jpg
 
  • הוסף לסימניות
  • #12
זה לא משהו שאפשר לשחק בו ממש, כל משחק מורכב מכמה שפות של קודים,
יש קוד ראשון של מה המשחק יעשה ויש עוד קודים של גרפיקה כדי שיהיה כפתורים ללחוץ (חשוב למשחק),
כשיש רק את הקוד הזה אי אפשר לשחק איתו בצורה נוחה ותקינה כמו בתמונה המצורפת, חייב שיהיה גרפיקה למשחק אם אין הדרך לשחק היא להתקין תוכנה של פייתון ולהשתמש בשורת הפקודה באתחל כמו בתמונה שזה ממש לא אפשריצפה בקובץ המצורף 1943786
אתה הצלחתה להיכנס למשחק?
 
  • הוסף לסימניות
  • #13
זה קוד יותר לקראת סיום


import tkinter as tk
from tkinter import PhotoImage

world_data = {
"כיכר הכניסה": {"description": "אתם עומדים בכיכר הכניסה המרכזית של העיר העתיקה. שער גדול ניצב מצפון, ושבילים מתפצלים מזרחה ומערבה.", "items": [], "characters": ["קבוצת אנשים לבושים בלבוש עתיק"], "exits": {"צפון": "שער העיר", "מזרח": "השוק הישן", "מערב": "החצר האחורית", "דרום": "הנמל"}, "image": "כיכר_הכניסה.png"},
"שער העיר": {"description": "שער אבן עתיק ומרשים. נראה שפעם הגן על הכניסה הראשית לעיר.", "items": [], "characters": [], "exits": {"דרום": "כיכר הכניסה"}, "image": "שער_העיר.png"},
"השוק הישן": {"description": "שוק הומה אדם, דוכנים צבעוניים מציעים מגוון סחורות. אוויר מלא בריחות תבלינים וקולות רוכלים.", "items": ["ארנק קטן"], "characters": {"מוכר תבלינים": {"has_task": False}, "קבצן": {}, "כמה אנשים לבושים בלבוש מסורתי": {}}, "exits": {"מערב": "כיכר הכניסה", "מזרח": "המקדש הנטוש"}, "image": "השוק_הישן.png"},
"החצר האחורית": {"description": "אתם בחצר האחורית של הבית העתיק. צמחייה פראית מטפסת על הקירות, ושביל אבן קטן מוביל לשער עץ. שיחים סבוכים נראים חוסמים מעבר אפשרי ממערב.", "items": ["חבל קצר"], "characters": [], "exits": {"מזרח": "כיכר הכניסה"}, "image": "החצר_האחורית.png"},
"המקדש הנטוש": {"description": "מקדש עתיק ועזוב, צמחייה פראית מטפסת על קירותיו המתפוררים. נשמעים צלילי רוח חזקים. דלת עץ ישנה נראית מובילה פנימה.", "items": [], "characters": {"נזיר זקן": {}}, "exits": {"מערב": "השוק הישן", "פנים": "דלת נעולה"}, "image": "המקדש_הנטוש.png"},
"חדר סודי במקדש": {"description": "חדר קטן וחשוך בתוך המקדש הנטוש. על הרצפה פזורים חפצים מוזרים.", "items": ["אוצר עתיק"], "characters": [], "exits": {"חוץ": "המקדש הנטוש"}, "image": "חדר_סודי_במקדש.png"},
"הנמל": {"description": "נמל שוקק חיים, רעש גלים מתנפצים על הרציף וקריאות מלחים באוויר. ספינות רבות עוגנות כאן.", "items": ["חבל עבה", "תיבת עץ"], "characters": {"ספן שיכור": {}, "סוחר": {}, "קבוצת אנשים לבושים בלבוש עתיק": {}}, "exits": {"צפון": "כיכר הכניסה"}, "image": "הנמל.png"},
"שביל נסתר": {"description": "אתם עומדים בשביל צר שעבר דרך השיחים הסבוכים. נראה שהוא מוביל לכיוון לא ידוע.", "items": [], "characters": [], "exits": {"מזרח": "החצר האחורית", "מערב": "באר ישנה"}, "image": "שביל_נסתר.png"},
"החדר בבית העתיק": {"description": "אתם מתעוררים בחדר השינה שלכם בבית העתיק. זיכרונות מעורפלים מחלום על אוצר אבוד מרצדים בראשכם. אור חלש חודר דרך החלון ומאיר מיטה ישנה, חרב תלויה על הקיר, שידה ועליה מספר מפות. דלת עץ מובילה החוצה.", "items": ["מפה קרועה", "מפה מאוירת"], "characters": {}, "exits": {"חוץ": "חצר הבית העתיק"}, "image": "החדר_בבית_העתיק.png"},
"רחוב הבתים העתיקים - מערב": {"description": "חלק זה של רחוב הבתים העתיקים נראה מעט מוזנח יותר. דלתות עץ רקובות וחלונות שבורים מעידים על הזנחה. דלת עץ ישנה נראית נעולה.", "items": ["מפתח חלוד"], "characters": [], "exits": {"מזרח": "רחוב הבתים העתיקים - מזרח"}, "image": "רחוב_הבתים_העתיקים_מערב.png"},
"באר ישנה": {"description": "אתם עומדים ליד באר אבן ישנה ויבשה. חבל דק נראה קשור לדלי חלוד בתוכה.", "items": ["דלי חלוד"], "characters": [], "exits": {"מזרח": "שביל נסתר", "למטה": "תחתית הבאר"}, "image": "באר_ישנה.png"},
"תחתית הבאר": {"description": "אתם בתחתית באר חשוכה וטחובה. נראה שיש כאן מעבר צר ממזרח.", "items": ["מטבע ישן"], "characters": [], "exits": {"למעלה": "באר ישנה", "מזרח": "מערה חשוכה"}, "image": "תחתית_הבאר.png"},
"מערה חשוכה": {"description": "אתם במערה חשוכה. קשה לראות לאן היא מובילה. נשמעים קולות מוזרים מרחוק.", "items": [], "characters": [], "exits": {"מערב": "תחתית הבאר", "מזרח": "סוף המערה"}, "image": "מערה_חשוכה.png"},
"סוף המערה": {"description": "אתם בסוף המערה. אור חלש חודר מלמעלה. אתם רואים פתח קטן.", "items": ["אבן קטנה"], "characters": [], "exits": {"מערב": "מערה חשוכה", "למעלה": "גן סודי"}, "image": "סוף_המערה.png"},
"גן סודי": {"description": "אתם נמצאים בגן סודי ויפהפה, מוקף בצמחים מטפסים ופרחים צבעוניים. במרכז הגן ניצבת בריכה קטנה וצלולה.", "items": ["פרח נדיר"], "characters": [], "exits": {"למטה": "סוף המערה"}, "image": "גן_סודי.png"}
}

current_location = "החדר בבית העתיק"
inventory = ["חרב ישנה"]
tasks = {}
has_defeated_guardian = False
game_over = False
current_image = None

root = tk.Tk()
root.title("הרפתקה בעיר העתיקה")

location_description = tk.Label(root, text="", font=("Arial", 12), justify="left")
location_description.pack(pady=10)

image_label = tk.Label(root)
image_label.pack()

items_label = tk.Label(root, text="", font=("Arial", 10), justify="left")
items_label.pack()

characters_label = tk.Label(root, text="", font=("Arial", 10), justify="left")
characters_label.pack()

inventory_label = tk.Label(root, text="", font=("Arial", 10), justify="left")
inventory_label.pack()

task_label = tk.Label(root, text="המשימות שלך:", font=("Arial", 10), justify="left")
task_label.pack()

additional_info = tk.Label(root, text="", font=("Arial", 10), justify="left")
additional_info.pack()

# מסגרת עבור כפתורי תנועה
move_frame = tk.Frame(root)
move_frame.pack(pady=5)

tk.Button(move_frame, text="צפון", command=lambda: move("צפון")).grid(row=0, column=1, padx=5)
tk.Button(move_frame, text="דרום", command=lambda: move("דרום")).grid(row=2, column=1, padx=5)
tk.Button(move_frame, text="מזרח", command=lambda: move("מזרח")).grid(row=1, column=2, padx=5)
tk.Button(move_frame, text="מערב", command=lambda: move("מערב")).grid(row=1, column=0, padx=5)
tk.Button(move_frame, text="פנים", command=lambda: move("פנים")).grid(row=0, column=2, padx=5)
tk.Button(move_frame, text="חוץ", command=lambda: move("חוץ")).grid(row=2, column=0, padx=5)
tk.Button(move_frame, text="למעלה", command=lambda: move("למעלה")).grid(row=0, column=0, padx=5)
tk.Button(move_frame, text="למטה", command=lambda: move("למטה")).grid(row=2, column=2, padx=5)

# מסגרת עבור אינטראקציה עם פריטים
item_frame = tk.Frame(root)
item_frame.pack(pady=5)

pickup_label = tk.Label(item_frame, text="אוסף פריט:")
pickup_label.pack(side="left")
pickup_entry = tk.Entry(item_frame)
pickup_entry.pack(side="left")
pickup_button = tk.Button(item_frame, text="אוסף", command=pickup_item)
pickup_button.pack(side="left")

use_label = tk.Label(item_frame, text="השתמש בפריט:")
use_label.pack(side="left")
use_entry = tk.Entry(item_frame)
use_entry.pack(side="left")
use_button = tk.Button(item_frame, text="השתמש", command=use_item)
use_button.pack(side="left")

# מסגרת עבור אינטראקציה עם דמויות
character_frame = tk.Frame(root)
character_frame.pack(pady=5)

talk_label = tk.Label(character_frame, text="דבר עם:")
talk_label.pack(side="left")
talk_entry = tk.Entry(character_frame)
talk_entry.pack(side="left")
talk_button = tk.Button(character_frame, text="דבר", command=talk_to_character)
talk_button.pack(side="left")

attack_label = tk.Label(character_frame, text="התקפה:")
attack_label.pack(side="left")
attack_entry = tk.Entry(character_frame)
attack_entry.pack(side="left")
attack_button = tk.Button(character_frame, text="התקפה", command=attack_character)
attack_button.pack(side="left")

output_label = tk.Label(root, text="", font=("Arial", 10), justify="left")
output_label.pack(pady=10)

def give_task(task_name, description):
tasks[task_name] = {"status": "לא התחיל", "description": description}
task_label.config(text="\n".join([f"- {task_info['description']} (סטטוס: {task_info['status']})" for task_name, task_info in tasks.items()]))

def update_display():
global current_image
location_name = current_location
location_info = world_data[location_name]
location_description.config(text=location_info["description"])
try:
img = PhotoImage(file=location_info["image"])
image_label.config(image=img)
image_label.image = img # שמירת הפניה לתמונה
current_image = img
except tk.TclError:
location_description.config(text=f"שגיאה: לא נמצאה תמונה עבור {location_name}\n{location_info['description']}")
image_label.config(image="")
current_image = None

items_text = f"בחדר ישנם הפריטים הבאים: {', '.join(location_info['items'])}" if location_info["items"] else "בחדר אין פריטים."
items_label.config(text=items_text)
characters_in_room = [char for char in location_info["characters"] if char != "שומר המקדש הזועם" or not has_defeated_guardian]
characters_text = f"בחדר נמצאות הדמויות הבאות: {', '.join(characters_in_room)}" if characters_in_room else "בחדר אין דמויות."
characters_label.config(text=characters_text)
inventory_text = f"בתיק שלך ישנם הפריטים הבאים: {', '.join(inventory)}" if inventory else "בתיק שלך אין פריטים."
inventory_label.config(text=inventory_text)
task_label.config(text="\n".join([f"- {task_info['description']} (סטטוס: {task_info['status']})" for task_name, task_info in tasks.items()]))
if current_location == "הנמל":
additional_info.config(text="בנמל עוגנות ספינות רבות בגדלים שונים.")
else:
additional_info.config(text="")

def move(direction):
global current_location
if current_location == "המקדש הנטוש" and direction == "פנים" and not has_defeated_guardian and "פנים" in world_data[current_location]["exits"]:
output_label.config(text="הדלת נעולה. אולי יש מפתח שיכול לפתוח אותה.")
elif direction in world_data[current_location]["exits"]:
current_location = world_data[current_location]["exits"][direction]
output_label.config(text="")
update_display()
else:
output_label.config(text="אין מעבר בכיוון הזה.")

def pickup_item():
item_to_pickup = pickup_entry.get()
if item_to_pickup in world_data[current_location]["items"]:
inventory.append(item_to_pickup)
world_data[current_location]["items"].remove(item_to_pickup)
output_label.config(text=f"אספת את {item_to_pickup}.")
update_display()
if item_to_pickup == "חבל קצר" and current_location == "החצר האחורית" and "תביא חבל" in tasks and tasks["תביא חבל"]["status"] == "התחיל":
output_label.config(text = "אספת את החבל הקצר.")
else:
output_label.config(text=f"אין פריט כזה '{item_to_pickup}' בחדר.")
pickup_entry.delete(0, tk.END)

def use_item():
item_to_use = use_entry.get()
if item_to_use in inventory:
output_label.config(text=f"השתמשת ב '{item_to_use}'.")
if item_to_use == "אוצר עתיק" and current_location == "חדר סודי במקדש":
output_label.config(text="השתמשת באוצר העתיק! ברכות, השלמת את ההרפתקה ומצאת את מה שחיפשת.")
tasks["מצא את האוצר העתיק"]["status"] = "הושלם"
update_display()
global game_over
game_over = True
root.destroy() # סגירת החלון
elif item_to_use == "חרב ישנה" and current_location == "החצר האחורית" and "מערב" not in world_data["החצר האחורית"]["exits"]:
output_label.config(text="השתמשת בחרב כדי לקצוץ את השיחים הסבוכים. נתיב חד
 
  • הוסף לסימניות
  • #14
המטרה זה להעלות לענן?
שיהיה קישור למשחק?
אפשר ברנדר זה חינמי
 

פרוגבוט

תוכן שיווקי
פרסומת

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק כה

אלְדָוִד אֵלֶיךָ יי נַפְשִׁי אֶשָּׂא:באֱלֹהַי בְּךָ בָטַחְתִּי אַל אֵבוֹשָׁה אַל יַעַלְצוּ אֹיְבַי לִי:גגַּם כָּל קוֶֹיךָ לֹא יֵבֹשׁוּ יֵבֹשׁוּ הַבּוֹגְדִים רֵיקָם:דדְּרָכֶיךָ יי הוֹדִיעֵנִי אֹרְחוֹתֶיךָ לַמְּדֵנִי:ההַדְרִיכֵנִי בַאֲמִתֶּךָ וְלַמְּדֵנִי כִּי אַתָּה אֱלֹהֵי יִשְׁעִי אוֹתְךָ קִוִּיתִי כָּל הַיּוֹם:וזְכֹר רַחֲמֶיךָ יי וַחֲסָדֶיךָ כִּי מֵעוֹלָם הֵמָּה:זחַטֹּאות נְעוּרַי וּפְשָׁעַי אַל תִּזְכֹּר כְּחַסְדְּךָ זְכָר לִי אַתָּה לְמַעַן טוּבְךָ יי:חטוֹב וְיָשָׁר יי עַל כֵּן יוֹרֶה חַטָּאִים בַּדָּרֶךְ:טיַדְרֵךְ עֲנָוִים בַּמִּשְׁפָּט וִילַמֵּד עֲנָוִים דַּרְכּוֹ:יכָּל אָרְחוֹת יי חֶסֶד וֶאֱמֶת לְנֹצְרֵי בְרִיתוֹ וְעֵדֹתָיו:יאלְמַעַן שִׁמְךָ יי וְסָלַחְתָּ לַעֲוֹנִי כִּי רַב הוּא:יבמִי זֶה הָאִישׁ יְרֵא יי יוֹרֶנּוּ בְּדֶרֶךְ יִבְחָר:יגנַפְשׁוֹ בְּטוֹב תָּלִין וְזַרְעוֹ יִירַשׁ אָרֶץ:ידסוֹד יי לִירֵאָיו וּבְרִיתוֹ לְהוֹדִיעָם:טועֵינַי תָּמִיד אֶל יי כִּי הוּא יוֹצִיא מֵרֶשֶׁת רַגְלָי:טזפְּנֵה אֵלַי וְחָנֵּנִי כִּי יָחִיד וְעָנִי אָנִי:יזצָרוֹת לְבָבִי הִרְחִיבוּ מִמְּצוּקוֹתַי הוֹצִיאֵנִי:יחרְאֵה עָנְיִי וַעֲמָלִי וְשָׂא לְכָל חַטֹּאותָי:יטרְאֵה אוֹיְבַי כִּי רָבּוּ וְשִׂנְאַת חָמָס שְׂנֵאוּנִי:כשָׁמְרָה נַפְשִׁי וְהַצִּילֵנִי אַל אֵבוֹשׁ כִּי חָסִיתִי בָךְ:כאתֹּם וָיֹשֶׁר יִצְּרוּנִי כִּי קִוִּיתִיךָ:כבפְּדֵה אֱלֹהִים אֶת יִשְׂרָאֵל מִכֹּל צָרוֹתָיו:
נקרא  2  פעמים
למעלה