Найти в Дзене
Подключите сигнал: В Coin выберите узел Coin, перейдите в "Node" и найдите сигнал coin_collected. Нажмите на "Connect" и выберите GameWorld, чтобы подключить сигнал к скрипту GameWorld.gd. Шаг 7: Обновление кода в GameWorld.gd Теперь обновим код в GameWorld.gd, чтобы отслеживать количество собранных монет. Откройте или создайте скрипт GameWorld.gd и добавьте следующий код: gdscript Run Copy code extends Node2D var score = 0 onready var score_label = $UI/ScoreLabel # Ссылка на Label для отображения счета func _ready(): # Подключаем сигнал от монеты for coin in get_children(): if coin.is_in_group("Coin"): coin.connect("coin_collected", self, "_on_Coin_coin_collected") func _on_Coin_coin_collected(): score += 1 score_label.text = "Счет: " + str(score) # Обновляем текст на экране Шаг 8: Создание Интерфейса Добавьте узел для интерфейса: В GameWorld добавьте узел CanvasLayer и назовите его UI. 🖥 Добавьте Label для отображения счета: Внутри UI добавьте узел Label и назовите его ScoreLabel. 🏆 Установите текст по умолчанию, например, "Счет: 0". Шаг 9: Завершение Настройки Сцены Добавьте несколько монет: Дублируйте узел Coin и разместите их на уровне, чтобы игрок мог их собирать. 💰 Добавьте группу для игрока: В скрипте Player.gd добавьте следующую строку в метод _ready(): gdscript Run Copy code func _ready(): add_to_group("player") Шаг 10: Тестирование Игры Запустите игру: Нажмите на кнопку "Play" (или F6) в верхнем меню, чтобы запустить игру. ▶️ Проверьте, что персонаж может двигаться, прыгать и собирать монеты. Убедитесь, что счет обновляется при сборе монет. 🎉 Шаг 11: Улучшения и Доработки Теперь, когда у вас есть базовая игра, вы можете добавить различные улучшения: Добавьте звуковые эффекты: Используйте узел AudioStreamPlayer для воспроизведения звуков при сборе монет или прыжках. 🔊 Создайте уровни: Добавьте новые сцены для различных уровней и переключайтесь между ними. 🌍 Добавьте врагов: Создайте врагов, которые будут двигаться по экрану и могут столкнуться с игроком. 👾 Добавьте анимацию: Используйте AnimationPlayer для анимации персонажа и других объектов. 🎨 Заключение Поздравляю! 🎊 Вы создали простую 2D платформенную игру на Godot 4.4 с использованием GDScript. Вы можете продолжать развивать и улучшать свою игру, добавляя новые механики и элементы. Не бойтесь экспериментировать и учиться на практике! Удачи в разработке! 🚀
1 год назад
Внутри GameWorld добавьте узел Area2D и назовите его Coin. Добавьте к Coin узел Sprite и загрузите изображение монеты (например, coin.png). Добавьте узел CollisionShape2D и установите его форму (например, CircleShape2D). Код для монеты: Создайте новый скрипт для Coin и назовите его Coin.gd: gdscript Run Copy code extends Area2D signal coin_collected func _on_Coin_body_entered(body): if body.is_in_group("player"): emit_signal("coin_collected") queue_free() # Удаляем монету
1 год назад
Полный Гид по Созданию 2D Игры на Godot 4.4 🎮✨ Шаг 1: Установка Godot Скачайте и установите Godot 4.4 с официального сайта. 📥 Запустите Godot и создайте новый проект. 🆕 Шаг 2: Создание Сцены Создайте новую сцену: Нажмите на "Scene" -> "New Scene". 🆕 Выберите "2D Scene" и сохраните сцену как Main.tscn. 💾 Добавьте узел для игрового мира: Добавьте узел Node2D и назовите его GameWorld. 🌍 Шаг 3: Создание Персонажа Добавьте узел для персонажа: Внутри GameWorld добавьте узел KinematicBody2D и назовите его Player. 🕹 Добавьте к Player узел Sprite и загрузите изображение персонажа (например, player.png). 🖼 Добавьте узел CollisionShape2D и установите его форму (например, RectangleShape2D), чтобы соответствовать размеру спрайта. 📏 Код для управления персонажем: Создайте новый скрипт для Player и назовите его Player.gd. Вот пример кода: gdscript Run Copy code extends KinematicBody2D # Переменные для управления движением var speed = 200 var jump_force = -400 var gravity = 1000 var velocity = Vector2.ZERO # Флаг для проверки, на земле ли игрок var is_on_ground = false func _physics_process(delta): # Применяем гравитацию velocity.y += gravity * delta # Проверяем, на земле ли игрок is_on_ground = is_on_floor() # Движение влево и вправо if Input.is_action_pressed("ui_right"): velocity.x = speed elif Input.is_action_pressed("ui_left"): velocity.x = -speed else: velocity.x = 0 # Прыжок if is_on_ground and Input.is_action_just_pressed("ui_up"): velocity.y = jump_force # Двигаем игрока velocity = move_and_slide(velocity, Vector2.UP) Шаг 4: Настройка Ввода Настройте ввод: Перейдите в "Project" -> "Project Settings" -> "Input Map". ⚙️ Добавьте действия ui_left, ui_right и ui_up, и назначьте им клавиши (например, стрелки влево, вправо и вверх). ⬅️➡️⬆️ Шаг 5: Создание Платформ Создайте платформу: Внутри GameWorld добавьте узел StaticBody2D и назовите его Platform. 🏗 Добавьте к Platform узел Sprite и загрузите изображение платформы (например, platform.png). 🖼 Добавьте узел CollisionShape2D и установите его форму (например, RectangleShape2D), чтобы соответствовать размеру спрайта. 📏 Создайте несколько платформ: Дублируйте Platform и разместите их на сцене, чтобы создать уровень. 🛠 Шаг 6: Добавление Монет Создайте монету: Внутри GameWorld добавьте узел Area2D и назовите его Coin. 💰 Добавьте к Coin узел Sprite и загрузите изображение монеты (например, coin.png). 🖼 Добавьте узел CollisionShape2D и установите его форму (например, CircleShape2D). 📏
1 год назад
🌟 Друзья! Завтра мы запускаем серию статей о создании 2D игры на GDScript с нуля! 🚀 Если вы хотите узнать, как разработать свою собственную игру, не пропустите этот уникальный контент! Подписывайтесь на нашу группу ВКонтакте, чтобы быть в курсе всех новостей и не пропустить новые статьи: https://vk.com/club229678810 Давайте вместе погружаться в мир разработки игр! 🎮✨
1 год назад
Как выбрать первый язык программирования в 2025
**🚀 Как выбрать первый язык программирования в 2025: полное руководство для новичков**   *От Python до Rust, от мобильной разработки до AI — разбираемся, куда направить силы, чтобы не пожалеть через год!* --- ### **🎯 Зачем учить программирование?**   Перед тем как погрузиться в синтаксисы и фреймворки, ответьте себе: **зачем вам это нужно?**   - 💰 **Зарплата мечты**: Junior-разработчик в России — от 60 тыс. ₽, Senior — до 500 тыс. ₽.   - 🌍 **Свобода выбора**: Удаленка, фриланс или офис в Кремниевой долине.   - 🧠 **Тренировка для мозга**: Программирование учит решать задачи, как Шерлок Холмс...
1 год назад
PYTHON
**🐍 Python: Почему его обожают новички и гиганты вроде Google и Netflix?**   *10 минут — и вы поймете, как этот язык покорит и вас!* --- ### **🚀 За что любят Python? 5 причин влюбиться**   1. **👶 Проще, чем азбука!**     Читаемый синтаксис — код понятен даже тем, кто никогда не программировал:     ```python   print("Привет, мир! 🌍") # Вот и ваша первая программа!   ``` 2. **🛠 Универсальный солдат:**     От веб-сайтов до нейросетей — Python справится со всем. Даже роботов им программируют! 🤖 3. **📚 Огромное комьюнити:**     Любая проблема уже решена на Stack Overflow. А еще есть наши [подборки туториалов в VK](https://vk...
1 год назад
GDScript
**🚀 GDScript: Почему этот язык стал мечтой инди-разработчика?**   Если вы задумывались о создании своей игры, но боялись сложностей — встречайте **GDScript**! Этот язык, созданный специально для движка Godot, стал настоящим прорывом для инди-разработчиков. Почему? Давайте разбираться.   --- ### **🎯 GDScript vs Python: В чём разница?**   - **Синтаксис как у Python**, но без лишнего:    ```gdscript  func _ready():    $Label.text = "Добро пожаловать!" # Простота + мощь Godot API  ```   - **Интеграция...
1 год назад
🎮🚀 Привет, геймдев-мечтатель! Хочешь создать свою игру, но не знаешь, с чего начать? GDScript — твой волшебный ключ в мир Godot Engine! 💡✨ --- ### 🔥 Почему GDScript? Лови 5 причин влюбиться! 1. 👾 Проще пареной репы! Если ты хоть раз видел Python — GDScript покажется тебе родным. Никаких сложных скобок и точек с запятой! Пример: func _ready(): print("Моя игра запустилась! 🎉") 2. ⚡️ Сверхскорость разработки! Встроен в Godot, не нужно скачивать тонны библиотек. Просто твори! 3. 💖 Лучший друг для 2D/3D! От платформеров до RPG — GDScript справится со всем. Даже с 3D-пушками! 🔫 4. 🤑 Бесплатно и с открытым исходным кодом! Никакой подписки на движок. Твори сколько влезет! 5. 👯♂️ Огромное комьюнити! Ты никогда не останешься один — тысячи разработчиков готовы помочь. А еще мы в нашей группе ВК! 😉 --- ### 🎯 Пример: Создай свою первую игру за 5 минут! Шаг 1: Добавь спрайт (персонажа) на сцену. Шаг 2: Прикрепи к нему скрипт и впиши код: extends KinematicBody2D var speed = 400 # Как быстро бежит твой герой? 🏃♂️ func _physics_process(delta): var velocity = Vector2() velocity.x = Input.get_action_strength("ui_right") - Input.get_action_strength("ui_left") velocity.y = Input.get_action_strength("ui_down") - Input.get_action_strength("ui_up") velocity = velocity.normalized() * speed move_and_slide(velocity) Шаг 3: Жми "Play" — и персонаж уже бегает от WASD или стрелочек! 🕹️ --- ### 💥 А что если... - Хочешь, чтобы при нажатии кнопки взорвался танк? 💣 Просто подключи сигнал pressed() и добавь: func _on_Button_pressed(): explode() # Твоя функция-взрывник! print("БА-БАХ! 😱") - Мечтаешь о системе диалогов? 📖 Используй массивы и таймеры: var dialogs = ["Привет!", "Как дела?", "Беги за мной!"] func start_dialog(): for text in dialogs: $Label.text = text yield(get_tree().create_timer(2), "timeout") # Пауза на 2 сек --- ### 🚨 Топ-3 лайфхака для новичков 1. 🛠️ Debug по-богатырски: Используй print() как проклятье — он покажет всё: от координат дракона 🐉 до уровня маны героя. 2. 🔍 Сигналы — твои магические заклинания: Не пиши тонны кода, соединяй узлы через встроенные сигналы (это как волшебная палочка Godot!). 3. 🎨 Меняй параметры на лету: В редакторе Godot можно редактировать скорость, цвет, размер прямо во время игры. Без перезапуска! --- ### 📢 P.S. Ты не один! Присоединяйся к нашей тусовке в ВК! 👉 У нас ты найдешь: - 🎁 Бесплатные ассеты (персонажи, текстуры, звуки). - 💬 Ежедневные мемы про геймдев (чтобы не сойти с ума от багов). - 🏆 Конкурсы с призами (хвастайся своими играми!). - 👑 Эксклюзивные туториалы (от анимации до сложного AI). Жми и стань частью нашей команды! Вместе мы соберем твою мечту по пикселям! 💪❤️ --- P.P.S. Не веришь, что GDScript это круто? Загляни в комментарии — там уже десятки игр от наших подписчиков! 👇 А твоя где? 😉 https://vk.com/club229678810 #GDScript_Godot #СоздайИгруМечты #ВК_Геймдев #НетЛимитам
1 год назад
### 1. Установка Godot Engine - Скачайте Godot с [официального сайта](https://godotengine.org/). - Запустите редактор и создайте новый проект. --- ### 2. Основы синтаксиса GDScript #### Переменные и типы: var number = 10 # int var text = "Hello, Godot!" # String var is_active = true # bool var velocity = Vector2(1, 0) # Vector2 var color = Color(1, 0, 0) # Color (RGB) #### Функции: func _ready(): print("Объект готов!") func add(a, b): return a + b #### Условные операторы: if health <= 0: print("Игрок умер!") elif health < 50: print("Низкое здоровье!") else: print("Всё в порядке.") --- ### 3. Работа с узлами (Nodes) Узлы — основа Godot. Каждый объект в игре (персонаж, кнопка, камера) это узел. Пример: изменим текст кнопки при старте игры. 1. Создайте сцену с кнопкой (Button). 2. Присоедините к кнопке скрипт (ПКМ на узле → Attach Script). 3. Напишите код: extends Button # Указываем, что скрипт привязан к кнопке func _ready(): text = "Нажми меня!" # Меняем текст кнопки --- ### 4. Обработка сигналов Сигналы — события (например, нажатие кнопки). Чтобы их обработать: 1. В редакторе перейдите на вкладку Node (справа). 2. Выберите сигнал (например, pressed() для кнопки). 3. Соедините его со скриптом. Код после подключения сигнала: extends Button func _ready(): text = "Нажми меня!" connect("pressed", self, "_on_button_pressed") # Подключение сигнала вручную func _on_button_pressed(): print("Кнопка нажата!") --- ### 5. Движение объекта Создайте сцену с узлом Sprite (например, для персонажа) и добавьте ему скрипт: extends Sprite var speed = 200 # Пикселей в секунду func _process(delta): # Движение вправо при нажатии D if Input.is_action_pressed("ui_right"): position.x += speed * delta --- ### 6. Работа с группами Группы позволяют управлять несколькими объектами одновременно. Пример: уничтожить все объекты в группе "enemies". func destroy_all_enemies(): for enemy in get_tree().get_nodes_in_group("enemies"): enemy.queue_free() # Удалить объект --- ### 7. Практический пример: управление игроком 1. Создайте сцену с узлом KinematicBody2D (игрок). 2. Добавьте спрайт и коллайдер. 3. Присоедините скрипт: extends KinematicBody2D var speed = 400 var velocity = Vector2() func _physics_process(delta): velocity = Vector2() # Управление стрелками if Input.is_action_pressed("ui_right"): velocity.x += 1 if Input.is_action_pressed("ui_left"): velocity.x -= 1 if Input.is_action_pressed("ui_down"): velocity.y += 1 if Input.is_action_pressed("ui_up"): velocity.y -= 1 velocity = velocity.normalized() * speed move_and_slide(velocity) --- ### 8. Советы для новичков 1. Изучите документацию: в Godot встроена подсказка по всем функциям и сигналам (клацните F1). 2. Экспериментируйте: меняйте параметры в реальном времени через Inspector. 3. Используйте готовые примеры: в Asset Library есть бесплатные ассеты. --- ### 9. Ресурсы для обучения - [Официальная документация](https://docs.godotengine.org/) - [Курс GDQuest](https://gdquest.com/) - [Канал BornCG на YouTube](https://www.youtube.com/user/BornCG) --- Попробуйте создать простую игру (например, «Понг» или «Платформер») и постепенно добавляйте механики. Если что-то не получается — спрашивайте! 😊
1 год назад
# Введение в JavaScript 😊
t.me/FriLanSdivi JavaScript — это мощный язык программирования, который используется для создания интерактивных веб-страниц. Он позволяет добавлять динамические элементы, такие как анимации, формы и много другое. 💻✨ ## История JavaScript 📜 JavaScript был создан в 1995 году Бренданом Айком и с тех пор стал одним из самых популярных языков программирования. Его основное предназначение — это работа в браузере, но с появлением Node.js он также стал использоваться на серверной стороне. 🚀 ## Основные особенности JavaScript 🔍 1...
1 год назад
🐍 Автоматизация ВКонтакте на Python: как публиковать посты через API *Простой гайд для новичков и маркетологов* --- 🔥 Зачем это нужно? Автоматизация ВК через Python сэкономит вам часы рутинной работы: ✅ Планирование публикаций ✅ Массовая отправка сообщений ✅ Анализ статистики группы ✅ Автопостинг контента из других источников --- 🚀 Как начать? 1. Установите библиотеку: pip install vk_api 2. Получите API-токен: 1. Перейдите в [VK Dev](https://vk.com/dev) 2. Создайте приложение (тип "Standalone") 3. Скопируйте access_token из адресной строки после разрешения прав --- 📌 Пример кода: автоматический пост в группу import vk_api from vk_api.utils import get_random_id # Настройки TOKEN = "ваш_токен" # Замените на свой GROUP_ID = -12345678 # ID группы (с минусом!) # Подключение vk_session = vk_api.VkApi(token=TOKEN) vk = vk_session.get_api() # Создаем текст поста с Emoji и хештегами post = """ 🚀 Привет, сообщество! Сегодня говорим о Python: ⭐ Топ-3 причины учить Python: 1. Проще некуда: print("Hello World!") 2. Мощные библиотеки для всего 3. Зарплаты от 100K ₽ для junior-разработчиков Пример кода (факториал): python def factorial(n): return 1 if n == 0 else n * factorial(n-1) #python #автоматизация #программирование """ # Публикуем! try: response = vk.wall.post( owner_id=GROUP_ID, message=post, random_id=get_random_id(), attachments="photo-12345_67890" # Можно добавить фото/видео ) print(f"✅ Пост опубликован! ID: {response['post_id']}") except Exception as error: print(f"❌ Ошибка: {error}") --- 💡 Советы для новичков: 1. Всегда проверяйте GROUP_ID (для групп должен быть отрицательным) 2. Используйте get_random_id(), чтобы избежать дублирования постов 3. Добавляйте вложения через параметр attachments: - Фото: photo-ownerid_photoid - Видео: video-ownerid_videoid - Ссылки: https://example.com --- ⚠️ Важные нюансы: - Не публикуйте слишком часто (риск блокировки) - Токен храните в секрете (используйте переменные окружения) - Полный список методов API: [документация VK](https://dev.vk.com/ru/method) --- 🎯 Что дальше? 1. Автопостинг новостей с RSS-лент 2. Парсинг комментариев для анализа аудитории 3. Автоответчик в личные сообщения группы *Пишите в комментариях, о каких фишках Python + VK рассказать подробнее!* #python #vk_api #автоматизация #программирование --- 📌 Комментарий для SMM-специалистов: С помощью этого скрипта можно: - Запланировать 100+ постов за час - А/B тестировать контент - Автоматизировать отчетность - Синхронизировать контент между соцсетями Python — ваш новый помощник в SMM! 🐍🚀
1 год назад
🐍 Мини-пост: Python за 60 секунд Что это? Python — язык программирования с простым синтаксисом, идеальный для начинающих и профессионалов. Плюсы: ✅ Читаемый код: print("Hello, World!") # Никаких лишних символов! ✅ Универсальность: веб-приложения (Django/Flask), анализ данных (Pandas), AI (TensorFlow), автоматизация. ✅ Огромное сообщество: библиотеки на все случаи жизни. ✅ Кроссплатформенность: работает на Windows, macOS, Linux. Пример кода: # Фильтрация четных чисел numbers = [1, 2, 3, 4, 5] even = [x for x in numbers if x % 2 == 0] print(even) # [2, 4] Где учить? - Бесплатно: [w3schools](https://www.w3schools.com/python/), [Stepik](https://stepik.org/course/67/promo). - Практика: [Codewars](https://www.codewars.com/), [LeetCode](https://leetcode.com/). Фишка: Python позволяет писать код быстро и элегантно. Попробуй — и влюбишься! 💻✨ --- Хочешь глубже? Пиши в комментах — расскажу про фреймворки, нейросети или секретные фишки! 😉
1 год назад