instruction: نظام سلاح كامل (إطلاق، ذخيرة، إعادة تعبئة)

output:
extends Node2D
var ammo = 30
var max_ammo = 30
func shoot():
    if ammo > 0:
        ammo -= 1
        spawn_bullet()
    else:
        reload()
func reload():
    await get_tree().create_timer(1.5).timeout
    ammo = max_ammo


instruction: نظام حقيبة أدوات (Inventory) مبسط

output:
var inventory = []
func add_item(item_id):
    inventory.append(item_id)
    print('Item added: ', item_id)
func has_item(item_id):
    return item_id in inventory


instruction: نظام حالات العدو (مطاردة، دورية، هجوم)

output:
enum State {IDLE, CHASE, ATTACK}
var current_state = State.IDLE
func _physics_process(delta):
    match current_state:
        State.IDLE: patrol()
        State.CHASE: follow_player()
        State.ATTACK: hit_player()


instruction: نظام عرض نصوص حوارية متقدم

output:
var lines = ['مرحباً بك', 'هل أنت مستعد؟']
var current_line = 0
func show_next_text():
    if current_line < lines.size():
        label.text = lines[current_line]
        current_line += 1


instruction: كود التفاعل مع الأبواب والأدوات

output:
func _input(event):
    if event.is_action_pressed('interact'):
        var targets = get_tree().get_nodes_in_group('interactable')
        for t in targets:
            if global_position.distance_to(t.global_position) < 50:
                t.interact()