Godot, scripts para Godot estudios y aprendizajes, Creacion de videojuegos. Creacion y publicacion de videojuegos en internet. Como hacer videojuegos. C# unity. Animaciones unity blender. Personajes videojuegos graficos dibujos. Diseño grafico. Comic. Animaciones gif. Dibujo de retratos. Realidad virtual. Cine y realidad virtual.
sábado, 15 de noviembre de 2025
Godot 4.5 estudiando nuevo proyecto;
lunes, 10 de noviembre de 2025
¡¡Censura!!;
Me han censurado y retirado de Gamejolt un juego de atropellar gatos, ni que ubiese echo el Carmageddon., en itchi.io y Steam censuran cualquier indicio incluso de desnudos, pues nada e ido a Youtube y borre tambien el video, no se al final que ocurrira, quizas tengan razon , no lo se, so lo se que la vida real es infinitamente mas desagradable, y los juegos son solo ficcion , pero si esto sigue asi, quizas proivan cualquier videojuego, cualquier, pelicula, cualquier novela, cualquiera obra de teatro...........
domingo, 9 de noviembre de 2025
participo en una game jam;
https://gamejolt.com/c/gamedev/narrative_jam?page=1
participo en una game jam; de momento solo hay 59 participantes, se que no ganare pero tengo curiosidad.................mi juego es este de aqui------https://gamejolt.com/games/El_ultimo_vivo/920498
✨ PREMIOS
🥇 1er lugar
$3,500 USD
🥈 2do lugar
$1000 USD
🥉 3er lugar
$500 USD
¡Esta es una oportunidad que no querrás perderte!
sábado, 1 de noviembre de 2025
juego hazaña sensual;
jueves, 30 de octubre de 2025
GDScript para Godot 4.5 provocar un sonido al entrar en un area y cerrar otro que venia por defecto;
extends Area3D
# --- Referencia al Nodo de Sonido de Premio/Ganancia (EXISTENTE) ---
# El nodo AudioStreamPlayer3D debe ser un hijo de este Area3D.
@onready var audio_player: AudioStreamPlayer3D = $AudioStreamPlayer3D
# --- NUEVA REFERENCIA: Sonido de Daño (A DETENER) ---
# ⚠️ IMPORTANTE: Esta ruta DEBE ser correcta desde la raíz de este script.
#@onready var audio_player_daño = $CollisionShape3D/AudioStreamPlayer3DSONIDODEMEMATANLENTO
@onready var audio_player_daño = $"../CharacterBody3D/Area3D cuando entra en area MATAEROE/CollisionShape3D/AudioStreamPlayer3DSONIDODEMEMATANLENTO"
# --- Control de Cooldown (Enfriamiento) ---
# Evita que el sonido se repita frenéticamente por una sola colisión.
var can_play_sound: bool = true
const COOLDOWN_TIME: float = 0.5 # Tiempo de espera para poder reproducir de nuevo (0.5 segundos)
# --- FUNCIÓN DE COLISIÓN ---
# ⚠️ Conecta la señal 'area_entered' del Area3D a esta función.
func _on_area_entered(area: Area3D) -> void:
# 🔊 LÓGICA AÑADIDA: Detener el sonido de peligro
if is_instance_valid(audio_player_daño) and audio_player_daño.playing:
audio_player_daño.stop()
print("Sonido de peligro detenido.")
# 1. Comprueba si el sonido de premio puede reproducirse
if can_play_sound and audio_player != null:
# 2. Reproduce el sonido de premio
audio_player.play()
print("Sonido de premio/ganancia generado.")
# 3. Inicia el cooldown
can_play_sound = false
# 4. Usa un Timer de la escena para restablecer la capacidad de reproducción después del cooldown.
get_tree().create_timer(COOLDOWN_TIME).timeout.connect(func(): can_play_sound = true)
# --- Comprobación Inicial ---
func _ready() -> void:
if audio_player == null:
push_error("ERROR: El nodo AudioStreamPlayer3D (premio) no fue encontrado. Revisa la ruta '$AudioStreamPlayer3D'.")
# Opcional: Comprobar el sonido de daño al inicio
if audio_player_daño == null:
push_error("ERROR: El nodo AudioStreamPlayer3DSONIDODEMEMATANLENTO no fue encontrado. Revisa la ruta.")
🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉🔉
Explicacion: La idea es que el player es herido por un enemigo, tiene consigo un sonido de apagamiento muerte, entonces cuando toca el botiquin ese sonido desaparece y aparece el sonido de energia nueva recuperada, esto va acompañado de un corazon que se va encojiendo, y que al tocar el botiquin se agranda asta estar sano...............
miércoles, 29 de octubre de 2025
GDScript para Godot 4.5, 3d, cañon dispara el solo, y al ser impactado es destruido.;
extends Area3D
# --- Variables Originales del Disparo ---
var Bullet = preload("res://PROTAGONISTA/area_3d_proyectil_en_si_mismoENEMIGO.tscn")
var timer = Timer.new()
var tiempo_disparo = 0.5 # Tiempo entre disparos en segundos
# --- NUEVA VARIABLE: Escena de la Astilla ---
# ⚠️ CAMBIA ESTA RUTA por la ruta real de tu escena "Astilla.tscn"
const ASTILLA_SCENE_PATH = "res://BARCO ELEMENTOS TEXTURAS/CAÑONES/TIBURON REVENTAO-3-.tscn"
var Astilla = preload(ASTILLA_SCENE_PATH)
func _ready():
# Lógica original del Timer para disparar
add_child(timer)
timer.timeout.connect(_on_timer_timeout)
timer.start(tiempo_disparo)
# ⚠️ MUY IMPORTANTE: Conecta la señal 'area_entered' de este Area3D
# en el editor de Godot a la función '_on_area_entered'.
func _on_timer_timeout():
var bullet = Bullet.instantiate()
add_child(bullet)
# ----------------------------------------------------------------------
## FUNCIÓN DE COLISIÓN (Se ejecuta al tocar)
# ----------------------------------------------------------------------
# Se ejecuta cuando otro Área entra en la nuestra.
func _on_area_entered(area: Area3D):
_destroy_and_instantiate()
# Si quieres que se destruya al tocar un cuerpo físico (como el jugador o un RigidBody3D),
# usa también la señal 'body_entered'.
func _on_body_entered(body: Node3D):
_destroy_and_instantiate()
# ----------------------------------------------------------------------
## LÓGICA DE INSTANCIACIÓN Y DESTRUCCIÓN
# ----------------------------------------------------------------------
func _destroy_and_instantiate():
# 1. Instanciar la Astilla
var astilla = Astilla.instantiate()
# 2. Posicionar la Astilla en la ubicación de este nodo
# Usamos get_parent() para añadir la astilla al mismo nivel que este nodo,
# asegurando que se muestre correctamente en el mundo.
if is_instance_valid(get_parent()):
get_parent().add_child(astilla)
astilla.global_transform = global_transform
print("Colisión detectada. Instanciando Astilla y destruyendo nodo actual.")
# 3. Eliminar este nodo del árbol de la escena
queue_free()
