mirror of
https://github.com/WolfangT/pixel-crusade.git
synced 2026-02-16 15:21:15 -05:00
add model base
This commit is contained in:
32
.vscode/launch.json
vendored
Normal file
32
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
// Use IntelliSense to learn about possible attributes.
|
||||||
|
// Hover to view descriptions of existing attributes.
|
||||||
|
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||||
|
"version": "0.2.0",
|
||||||
|
"configurations": [
|
||||||
|
{
|
||||||
|
"name": "Launch",
|
||||||
|
"type": "godot",
|
||||||
|
"request": "launch",
|
||||||
|
"project": "${workspaceFolder}",
|
||||||
|
"address": "127.0.0.1",
|
||||||
|
"port": 6007,
|
||||||
|
"scene": "main",
|
||||||
|
//"editor_path": "<path>",
|
||||||
|
// engine command line flags
|
||||||
|
"profiling": false,
|
||||||
|
"single_threaded_scene": false,
|
||||||
|
"debug_collisions": false,
|
||||||
|
"debug_paths": false,
|
||||||
|
"debug_navigation": false,
|
||||||
|
"debug_avoidance": false,
|
||||||
|
"debug_stringnames": false,
|
||||||
|
"frame_delay": 0,
|
||||||
|
"time_scale": 1.0,
|
||||||
|
"disable_vsync": false,
|
||||||
|
"fixed_fps": 60,
|
||||||
|
// anything else
|
||||||
|
"additional_options": ""
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
21
addons/godot-git-plugin/LICENSE
Normal file
21
addons/godot-git-plugin/LICENSE
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2016-2023 The Godot Engine community
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
1349
addons/godot-git-plugin/THIRDPARTY.md
Normal file
1349
addons/godot-git-plugin/THIRDPARTY.md
Normal file
File diff suppressed because it is too large
Load Diff
12
addons/godot-git-plugin/git_plugin.gdextension
Normal file
12
addons/godot-git-plugin/git_plugin.gdextension
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
[configuration]
|
||||||
|
|
||||||
|
entry_symbol = "git_plugin_init"
|
||||||
|
compatibility_minimum = "4.1.0"
|
||||||
|
|
||||||
|
[libraries]
|
||||||
|
|
||||||
|
macos.editor = "macos/libgit_plugin.macos.editor.universal.dylib"
|
||||||
|
windows.editor.x86_64 = "win64/libgit_plugin.windows.editor.x86_64.dll"
|
||||||
|
linux.editor.x86_64 = "linux/libgit_plugin.linux.editor.x86_64.so"
|
||||||
|
linux.editor.arm64 = "linux/libgit_plugin.linux.editor.arm64.so"
|
||||||
|
linux.editor.rv64 = ""
|
||||||
1
addons/godot-git-plugin/git_plugin.gdextension.uid
Normal file
1
addons/godot-git-plugin/git_plugin.gdextension.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dxk63u668l0xs
|
||||||
Binary file not shown.
Binary file not shown.
7
addons/godot-git-plugin/plugin.cfg
Normal file
7
addons/godot-git-plugin/plugin.cfg
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
[plugin]
|
||||||
|
|
||||||
|
name="Godot Git Plugin"
|
||||||
|
description="This plugin lets you interact with Git without leaving the Godot editor. More information can be found at https://github.com/godotengine/godot-git-plugin/wiki"
|
||||||
|
author="twaritwaikar"
|
||||||
|
version="v3.1.1"
|
||||||
|
script="godot-git-plugin.gd"
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,37 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://c511yn4ka1smj"
|
|
||||||
path="res://.godot/imported/Bases Papel-base_25.glb-b0d315509692c243915af0667be1e4dd.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/bases/Bases Papel-base_25.glb"
|
|
||||||
dest_files=["res://.godot/imported/Bases Papel-base_25.glb-b0d315509692c243915af0667be1e4dd.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/apply_root_scale=true
|
|
||||||
nodes/root_scale=1.0
|
|
||||||
nodes/import_as_skeleton_bones=false
|
|
||||||
nodes/use_node_type_suffixes=true
|
|
||||||
meshes/ensure_tangents=true
|
|
||||||
meshes/generate_lods=true
|
|
||||||
meshes/create_shadow_meshes=true
|
|
||||||
meshes/light_baking=1
|
|
||||||
meshes/lightmap_texel_size=0.2
|
|
||||||
meshes/force_disable_compression=false
|
|
||||||
skins/use_named_skins=true
|
|
||||||
animation/import=true
|
|
||||||
animation/fps=30
|
|
||||||
animation/trimming=false
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
gltf/naming_version=1
|
|
||||||
gltf/embedded_image_handling=1
|
|
||||||
Binary file not shown.
@@ -1,37 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://rclbcfoibl1p"
|
|
||||||
path="res://.godot/imported/Bases Papel-base_30x60.glb-548c6ad5c7f0a781c0e21b2be2cf6bf9.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/bases/Bases Papel-base_30x60.glb"
|
|
||||||
dest_files=["res://.godot/imported/Bases Papel-base_30x60.glb-548c6ad5c7f0a781c0e21b2be2cf6bf9.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/apply_root_scale=true
|
|
||||||
nodes/root_scale=1.0
|
|
||||||
nodes/import_as_skeleton_bones=false
|
|
||||||
nodes/use_node_type_suffixes=true
|
|
||||||
meshes/ensure_tangents=true
|
|
||||||
meshes/generate_lods=true
|
|
||||||
meshes/create_shadow_meshes=true
|
|
||||||
meshes/light_baking=1
|
|
||||||
meshes/lightmap_texel_size=0.2
|
|
||||||
meshes/force_disable_compression=false
|
|
||||||
skins/use_named_skins=true
|
|
||||||
animation/import=true
|
|
||||||
animation/fps=30
|
|
||||||
animation/trimming=false
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
gltf/naming_version=1
|
|
||||||
gltf/embedded_image_handling=1
|
|
||||||
Binary file not shown.
@@ -1,37 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://jcm4ger3ns40"
|
|
||||||
path="res://.godot/imported/Bases Papel-base_32.glb-ad10c960258809754d0ae6bd291b6b47.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/bases/Bases Papel-base_32.glb"
|
|
||||||
dest_files=["res://.godot/imported/Bases Papel-base_32.glb-ad10c960258809754d0ae6bd291b6b47.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/apply_root_scale=true
|
|
||||||
nodes/root_scale=1.0
|
|
||||||
nodes/import_as_skeleton_bones=false
|
|
||||||
nodes/use_node_type_suffixes=true
|
|
||||||
meshes/ensure_tangents=true
|
|
||||||
meshes/generate_lods=true
|
|
||||||
meshes/create_shadow_meshes=true
|
|
||||||
meshes/light_baking=1
|
|
||||||
meshes/lightmap_texel_size=0.2
|
|
||||||
meshes/force_disable_compression=false
|
|
||||||
skins/use_named_skins=true
|
|
||||||
animation/import=true
|
|
||||||
animation/fps=30
|
|
||||||
animation/trimming=false
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
gltf/naming_version=1
|
|
||||||
gltf/embedded_image_handling=1
|
|
||||||
Binary file not shown.
@@ -1,37 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://bshpxw6l6s5sa"
|
|
||||||
path="res://.godot/imported/Bases Papel-base_40.glb-fb35928f7ccdfa93e85bd27b1e6b9496.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/bases/Bases Papel-base_40.glb"
|
|
||||||
dest_files=["res://.godot/imported/Bases Papel-base_40.glb-fb35928f7ccdfa93e85bd27b1e6b9496.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/apply_root_scale=true
|
|
||||||
nodes/root_scale=1.0
|
|
||||||
nodes/import_as_skeleton_bones=false
|
|
||||||
nodes/use_node_type_suffixes=true
|
|
||||||
meshes/ensure_tangents=true
|
|
||||||
meshes/generate_lods=true
|
|
||||||
meshes/create_shadow_meshes=true
|
|
||||||
meshes/light_baking=1
|
|
||||||
meshes/lightmap_texel_size=0.2
|
|
||||||
meshes/force_disable_compression=false
|
|
||||||
skins/use_named_skins=true
|
|
||||||
animation/import=true
|
|
||||||
animation/fps=30
|
|
||||||
animation/trimming=false
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
gltf/naming_version=1
|
|
||||||
gltf/embedded_image_handling=1
|
|
||||||
Binary file not shown.
@@ -1,37 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://b8segdxr224fa"
|
|
||||||
path="res://.godot/imported/Bases Papel-base_50.glb-70f49bddbcc9fef9c7c9072bdf9911a5.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/bases/Bases Papel-base_50.glb"
|
|
||||||
dest_files=["res://.godot/imported/Bases Papel-base_50.glb-70f49bddbcc9fef9c7c9072bdf9911a5.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/apply_root_scale=true
|
|
||||||
nodes/root_scale=1.0
|
|
||||||
nodes/import_as_skeleton_bones=false
|
|
||||||
nodes/use_node_type_suffixes=true
|
|
||||||
meshes/ensure_tangents=true
|
|
||||||
meshes/generate_lods=true
|
|
||||||
meshes/create_shadow_meshes=true
|
|
||||||
meshes/light_baking=1
|
|
||||||
meshes/lightmap_texel_size=0.2
|
|
||||||
meshes/force_disable_compression=false
|
|
||||||
skins/use_named_skins=true
|
|
||||||
animation/import=true
|
|
||||||
animation/fps=30
|
|
||||||
animation/trimming=false
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
gltf/naming_version=1
|
|
||||||
gltf/embedded_image_handling=1
|
|
||||||
Binary file not shown.
@@ -1,37 +0,0 @@
|
|||||||
[remap]
|
|
||||||
|
|
||||||
importer="scene"
|
|
||||||
importer_version=1
|
|
||||||
type="PackedScene"
|
|
||||||
uid="uid://ukr5hy5d0xph"
|
|
||||||
path="res://.godot/imported/Bases Papel-base_60.glb-a625ea3e4c7cd9219eb512fdd1731536.scn"
|
|
||||||
|
|
||||||
[deps]
|
|
||||||
|
|
||||||
source_file="res://assets/bases/Bases Papel-base_60.glb"
|
|
||||||
dest_files=["res://.godot/imported/Bases Papel-base_60.glb-a625ea3e4c7cd9219eb512fdd1731536.scn"]
|
|
||||||
|
|
||||||
[params]
|
|
||||||
|
|
||||||
nodes/root_type=""
|
|
||||||
nodes/root_name=""
|
|
||||||
nodes/apply_root_scale=true
|
|
||||||
nodes/root_scale=1.0
|
|
||||||
nodes/import_as_skeleton_bones=false
|
|
||||||
nodes/use_node_type_suffixes=true
|
|
||||||
meshes/ensure_tangents=true
|
|
||||||
meshes/generate_lods=true
|
|
||||||
meshes/create_shadow_meshes=true
|
|
||||||
meshes/light_baking=1
|
|
||||||
meshes/lightmap_texel_size=0.2
|
|
||||||
meshes/force_disable_compression=false
|
|
||||||
skins/use_named_skins=true
|
|
||||||
animation/import=true
|
|
||||||
animation/fps=30
|
|
||||||
animation/trimming=false
|
|
||||||
animation/remove_immutable_tracks=true
|
|
||||||
animation/import_rest_as_RESET=false
|
|
||||||
import_script/path=""
|
|
||||||
_subresources={}
|
|
||||||
gltf/naming_version=1
|
|
||||||
gltf/embedded_image_handling=1
|
|
||||||
7
assets/bases/base_25.mtl
Normal file
7
assets/bases/base_25.mtl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# FreeCAD v1.0 build0 Arch module
|
||||||
|
# https://www.freecad.org
|
||||||
|
newmtl color_0fa5e8
|
||||||
|
Kd 0.05882352963089943 0.6470588445663452 0.9098039269447327
|
||||||
|
Tr 0.0
|
||||||
|
d 1.0
|
||||||
|
# Material Count: 1
|
||||||
5032
assets/bases/base_25.obj
Normal file
5032
assets/bases/base_25.obj
Normal file
File diff suppressed because it is too large
Load Diff
25
assets/bases/base_25.obj.import
Normal file
25
assets/bases/base_25.obj.import
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wavefront_obj"
|
||||||
|
importer_version=1
|
||||||
|
type="Mesh"
|
||||||
|
uid="uid://cv5n17attn4oa"
|
||||||
|
path="res://.godot/imported/base_25.obj-123975b71860d02a8e35538c205571a3.mesh"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
files=["res://.godot/imported/base_25.obj-123975b71860d02a8e35538c205571a3.mesh"]
|
||||||
|
|
||||||
|
source_file="res://assets/bases/base_25.obj"
|
||||||
|
dest_files=["res://.godot/imported/base_25.obj-123975b71860d02a8e35538c205571a3.mesh", "res://.godot/imported/base_25.obj-123975b71860d02a8e35538c205571a3.mesh"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
generate_tangents=true
|
||||||
|
generate_lods=true
|
||||||
|
generate_shadow_mesh=true
|
||||||
|
generate_lightmap_uv2=false
|
||||||
|
generate_lightmap_uv2_texel_size=0.2
|
||||||
|
scale_mesh=Vector3(1, 1, 1)
|
||||||
|
offset_mesh=Vector3(0, 0, 0)
|
||||||
|
force_disable_mesh_compression=false
|
||||||
7
assets/bases/base_30x60.mtl
Normal file
7
assets/bases/base_30x60.mtl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# FreeCAD v1.0 build0 Arch module
|
||||||
|
# https://www.freecad.org
|
||||||
|
newmtl color_cccccc
|
||||||
|
Kd 0.800000011920929 0.800000011920929 0.800000011920929
|
||||||
|
Tr 0.0
|
||||||
|
d 1.0
|
||||||
|
# Material Count: 1
|
||||||
33377
assets/bases/base_30x60.obj
Normal file
33377
assets/bases/base_30x60.obj
Normal file
File diff suppressed because it is too large
Load Diff
25
assets/bases/base_30x60.obj.import
Normal file
25
assets/bases/base_30x60.obj.import
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wavefront_obj"
|
||||||
|
importer_version=1
|
||||||
|
type="Mesh"
|
||||||
|
uid="uid://djr0keyfmdsrs"
|
||||||
|
path="res://.godot/imported/base_30x60.obj-f60cf65f31c0c673deeb9d6b6c41d521.mesh"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
files=["res://.godot/imported/base_30x60.obj-f60cf65f31c0c673deeb9d6b6c41d521.mesh"]
|
||||||
|
|
||||||
|
source_file="res://assets/bases/base_30x60.obj"
|
||||||
|
dest_files=["res://.godot/imported/base_30x60.obj-f60cf65f31c0c673deeb9d6b6c41d521.mesh", "res://.godot/imported/base_30x60.obj-f60cf65f31c0c673deeb9d6b6c41d521.mesh"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
generate_tangents=true
|
||||||
|
generate_lods=true
|
||||||
|
generate_shadow_mesh=true
|
||||||
|
generate_lightmap_uv2=false
|
||||||
|
generate_lightmap_uv2_texel_size=0.2
|
||||||
|
scale_mesh=Vector3(1, 1, 1)
|
||||||
|
offset_mesh=Vector3(0, 0, 0)
|
||||||
|
force_disable_mesh_compression=false
|
||||||
7
assets/bases/base_32.mtl
Normal file
7
assets/bases/base_32.mtl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# FreeCAD v1.0 build0 Arch module
|
||||||
|
# https://www.freecad.org
|
||||||
|
newmtl color_cccccc
|
||||||
|
Kd 0.800000011920929 0.800000011920929 0.800000011920929
|
||||||
|
Tr 0.0
|
||||||
|
d 1.0
|
||||||
|
# Material Count: 1
|
||||||
35657
assets/bases/base_32.obj
Normal file
35657
assets/bases/base_32.obj
Normal file
File diff suppressed because it is too large
Load Diff
25
assets/bases/base_32.obj.import
Normal file
25
assets/bases/base_32.obj.import
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wavefront_obj"
|
||||||
|
importer_version=1
|
||||||
|
type="Mesh"
|
||||||
|
uid="uid://bxa678vdex1us"
|
||||||
|
path="res://.godot/imported/base_32.obj-940ca75269aa8c08b16dcb57b7793df2.mesh"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
files=["res://.godot/imported/base_32.obj-940ca75269aa8c08b16dcb57b7793df2.mesh"]
|
||||||
|
|
||||||
|
source_file="res://assets/bases/base_32.obj"
|
||||||
|
dest_files=["res://.godot/imported/base_32.obj-940ca75269aa8c08b16dcb57b7793df2.mesh", "res://.godot/imported/base_32.obj-940ca75269aa8c08b16dcb57b7793df2.mesh"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
generate_tangents=true
|
||||||
|
generate_lods=true
|
||||||
|
generate_shadow_mesh=true
|
||||||
|
generate_lightmap_uv2=false
|
||||||
|
generate_lightmap_uv2_texel_size=0.2
|
||||||
|
scale_mesh=Vector3(1, 1, 1)
|
||||||
|
offset_mesh=Vector3(0, 0, 0)
|
||||||
|
force_disable_mesh_compression=false
|
||||||
7
assets/bases/base_40.mtl
Normal file
7
assets/bases/base_40.mtl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# FreeCAD v1.0 build0 Arch module
|
||||||
|
# https://www.freecad.org
|
||||||
|
newmtl color_cccccc
|
||||||
|
Kd 0.800000011920929 0.800000011920929 0.800000011920929
|
||||||
|
Tr 0.0
|
||||||
|
d 1.0
|
||||||
|
# Material Count: 1
|
||||||
32242
assets/bases/base_40.obj
Normal file
32242
assets/bases/base_40.obj
Normal file
File diff suppressed because it is too large
Load Diff
25
assets/bases/base_40.obj.import
Normal file
25
assets/bases/base_40.obj.import
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wavefront_obj"
|
||||||
|
importer_version=1
|
||||||
|
type="Mesh"
|
||||||
|
uid="uid://0nr461srip5r"
|
||||||
|
path="res://.godot/imported/base_40.obj-bf39efbb9410c06528e6405b4e16d6c3.mesh"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
files=["res://.godot/imported/base_40.obj-bf39efbb9410c06528e6405b4e16d6c3.mesh"]
|
||||||
|
|
||||||
|
source_file="res://assets/bases/base_40.obj"
|
||||||
|
dest_files=["res://.godot/imported/base_40.obj-bf39efbb9410c06528e6405b4e16d6c3.mesh", "res://.godot/imported/base_40.obj-bf39efbb9410c06528e6405b4e16d6c3.mesh"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
generate_tangents=true
|
||||||
|
generate_lods=true
|
||||||
|
generate_shadow_mesh=true
|
||||||
|
generate_lightmap_uv2=false
|
||||||
|
generate_lightmap_uv2_texel_size=0.2
|
||||||
|
scale_mesh=Vector3(1, 1, 1)
|
||||||
|
offset_mesh=Vector3(0, 0, 0)
|
||||||
|
force_disable_mesh_compression=false
|
||||||
7
assets/bases/base_50.mtl
Normal file
7
assets/bases/base_50.mtl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# FreeCAD v1.0 build0 Arch module
|
||||||
|
# https://www.freecad.org
|
||||||
|
newmtl color_cccccc
|
||||||
|
Kd 0.800000011920929 0.800000011920929 0.800000011920929
|
||||||
|
Tr 0.0
|
||||||
|
d 1.0
|
||||||
|
# Material Count: 1
|
||||||
35687
assets/bases/base_50.obj
Normal file
35687
assets/bases/base_50.obj
Normal file
File diff suppressed because it is too large
Load Diff
25
assets/bases/base_50.obj.import
Normal file
25
assets/bases/base_50.obj.import
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wavefront_obj"
|
||||||
|
importer_version=1
|
||||||
|
type="Mesh"
|
||||||
|
uid="uid://dlm2xpioux8p"
|
||||||
|
path="res://.godot/imported/base_50.obj-7fad0a98d58d3de7c615f326fc783081.mesh"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
files=["res://.godot/imported/base_50.obj-7fad0a98d58d3de7c615f326fc783081.mesh"]
|
||||||
|
|
||||||
|
source_file="res://assets/bases/base_50.obj"
|
||||||
|
dest_files=["res://.godot/imported/base_50.obj-7fad0a98d58d3de7c615f326fc783081.mesh", "res://.godot/imported/base_50.obj-7fad0a98d58d3de7c615f326fc783081.mesh"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
generate_tangents=true
|
||||||
|
generate_lods=true
|
||||||
|
generate_shadow_mesh=true
|
||||||
|
generate_lightmap_uv2=false
|
||||||
|
generate_lightmap_uv2_texel_size=0.2
|
||||||
|
scale_mesh=Vector3(1, 1, 1)
|
||||||
|
offset_mesh=Vector3(0, 0, 0)
|
||||||
|
force_disable_mesh_compression=false
|
||||||
7
assets/bases/base_60.mtl
Normal file
7
assets/bases/base_60.mtl
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# FreeCAD v1.0 build0 Arch module
|
||||||
|
# https://www.freecad.org
|
||||||
|
newmtl color_cccccc
|
||||||
|
Kd 0.800000011920929 0.800000011920929 0.800000011920929
|
||||||
|
Tr 0.0
|
||||||
|
d 1.0
|
||||||
|
# Material Count: 1
|
||||||
37252
assets/bases/base_60.obj
Normal file
37252
assets/bases/base_60.obj
Normal file
File diff suppressed because it is too large
Load Diff
25
assets/bases/base_60.obj.import
Normal file
25
assets/bases/base_60.obj.import
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="wavefront_obj"
|
||||||
|
importer_version=1
|
||||||
|
type="Mesh"
|
||||||
|
uid="uid://brb8h816lpfue"
|
||||||
|
path="res://.godot/imported/base_60.obj-5a05f61717778c4882ec9de63229452d.mesh"
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
files=["res://.godot/imported/base_60.obj-5a05f61717778c4882ec9de63229452d.mesh"]
|
||||||
|
|
||||||
|
source_file="res://assets/bases/base_60.obj"
|
||||||
|
dest_files=["res://.godot/imported/base_60.obj-5a05f61717778c4882ec9de63229452d.mesh", "res://.godot/imported/base_60.obj-5a05f61717778c4882ec9de63229452d.mesh"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
generate_tangents=true
|
||||||
|
generate_lods=true
|
||||||
|
generate_shadow_mesh=true
|
||||||
|
generate_lightmap_uv2=false
|
||||||
|
generate_lightmap_uv2_texel_size=0.2
|
||||||
|
scale_mesh=Vector3(1, 1, 1)
|
||||||
|
offset_mesh=Vector3(0, 0, 0)
|
||||||
|
force_disable_mesh_compression=false
|
||||||
BIN
assets/cartas/combat_priest_original.png
Normal file
BIN
assets/cartas/combat_priest_original.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 201 KiB |
34
assets/cartas/combat_priest_original.png.import
Normal file
34
assets/cartas/combat_priest_original.png.import
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cq5c6lacc0rdw"
|
||||||
|
path="res://.godot/imported/combat_priest_original.png-00a69499889e9116ba3a460a25d31480.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/cartas/combat_priest_original.png"
|
||||||
|
dest_files=["res://.godot/imported/combat_priest_original.png-00a69499889e9116ba3a460a25d31480.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
BIN
assets/cartas/combat_priest_pixel.png
Normal file
BIN
assets/cartas/combat_priest_pixel.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 25 KiB |
35
assets/cartas/combat_priest_pixel.png.import
Normal file
35
assets/cartas/combat_priest_pixel.png.import
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cc85nihxm3set"
|
||||||
|
path.s3tc="res://.godot/imported/combat_priest_pixel.png-0e39a6cefb9e7671576bcb8e2f922deb.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/cartas/combat_priest_pixel.png"
|
||||||
|
dest_files=["res://.godot/imported/combat_priest_pixel.png-0e39a6cefb9e7671576bcb8e2f922deb.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
BIN
assets/cartas/combat_priest_pixel.png14417960543.tmp
Normal file
BIN
assets/cartas/combat_priest_pixel.png14417960543.tmp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 22 KiB |
BIN
assets/dev_512_gr_032x.jpg
Normal file
BIN
assets/dev_512_gr_032x.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 43 KiB |
35
assets/dev_512_gr_032x.jpg.import
Normal file
35
assets/dev_512_gr_032x.jpg.import
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://c3ydthu2vpopv"
|
||||||
|
path.s3tc="res://.godot/imported/dev_512_gr_032x.jpg-8f4aa0261be37593c29bdbfdf093a5a1.s3tc.ctex"
|
||||||
|
metadata={
|
||||||
|
"imported_formats": ["s3tc_bptc"],
|
||||||
|
"vram_texture": true
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://assets/dev_512_gr_032x.jpg"
|
||||||
|
dest_files=["res://.godot/imported/dev_512_gr_032x.jpg-8f4aa0261be37593c29bdbfdf093a5a1.s3tc.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=2
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=true
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=0
|
||||||
16
main.gd
Normal file
16
main.gd
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready() -> void:
|
||||||
|
if OS.has_feature("dedicated_server") or DisplayServer.get_name() == "headless":
|
||||||
|
RenderingServer.render_loop_enabled = false
|
||||||
|
else:
|
||||||
|
pass
|
||||||
|
#get_tree().root.get_node("MusicPlayer").play()
|
||||||
|
get_tree().root.add_child.call_deferred(load("res://src/main_game.tscn").instantiate())
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(_delta: float) -> void:
|
||||||
|
pass
|
||||||
1
main.gd.uid
Normal file
1
main.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://ckn0s7jrhafjr
|
||||||
6
main.tscn
Normal file
6
main.tscn
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://cyo30vhqp8aod"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://ckn0s7jrhafjr" path="res://main.gd" id="1_0xm2m"]
|
||||||
|
|
||||||
|
[node name="Main" type="Node"]
|
||||||
|
script = ExtResource("1_0xm2m")
|
||||||
@@ -11,9 +11,15 @@ config_version=5
|
|||||||
[application]
|
[application]
|
||||||
|
|
||||||
config/name="pixel-crusade"
|
config/name="pixel-crusade"
|
||||||
|
run/main_scene="uid://cyo30vhqp8aod"
|
||||||
config/features=PackedStringArray("4.4", "GL Compatibility")
|
config/features=PackedStringArray("4.4", "GL Compatibility")
|
||||||
config/icon="res://icon.svg"
|
config/icon="res://icon.svg"
|
||||||
|
|
||||||
|
[editor]
|
||||||
|
|
||||||
|
version_control/plugin_name="GitPlugin"
|
||||||
|
version_control/autoload_on_startup=true
|
||||||
|
|
||||||
[rendering]
|
[rendering]
|
||||||
|
|
||||||
renderer/rendering_method="gl_compatibility"
|
renderer/rendering_method="gl_compatibility"
|
||||||
|
|||||||
11
src/main_game.gd
Normal file
11
src/main_game.gd
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
extends Node3D
|
||||||
|
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready() -> void:
|
||||||
|
pass # Replace with function body.
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(delta: float) -> void:
|
||||||
|
pass
|
||||||
1
src/main_game.gd.uid
Normal file
1
src/main_game.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://b5kn17oto74o
|
||||||
38
src/main_game.tscn
Normal file
38
src/main_game.tscn
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
[gd_scene load_steps=7 format=3 uid="uid://budrvmnmxvk2d"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://b5kn17oto74o" path="res://src/main_game.gd" id="1_fq370"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://ds20afeq5fbty" path="res://src/models/combat_priest.tscn" id="2_78si8"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://c3ydthu2vpopv" path="res://assets/dev_512_gr_032x.jpg" id="3_aptux"]
|
||||||
|
|
||||||
|
[sub_resource type="BoxShape3D" id="BoxShape3D_78si8"]
|
||||||
|
size = Vector3(10, 1, 10)
|
||||||
|
|
||||||
|
[sub_resource type="StandardMaterial3D" id="StandardMaterial3D_3vl0c"]
|
||||||
|
albedo_texture = ExtResource("3_aptux")
|
||||||
|
|
||||||
|
[sub_resource type="BoxMesh" id="BoxMesh_aptux"]
|
||||||
|
size = Vector3(10, 1, 10)
|
||||||
|
|
||||||
|
[node name="MainGame" type="Node3D"]
|
||||||
|
script = ExtResource("1_fq370")
|
||||||
|
|
||||||
|
[node name="CameraPivot" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="Camera3D" type="Camera3D" parent="CameraPivot"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 0.707107, 0.707107, 0, -0.707107, 0.707107, 0, 5, 5)
|
||||||
|
|
||||||
|
[node name="DirectionalLight3D" type="DirectionalLight3D" parent="CameraPivot"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, -4.37114e-08, 1, 0, -1, -4.37114e-08, 0, 5, 0)
|
||||||
|
|
||||||
|
[node name="BaseModel" parent="." instance=ExtResource("2_78si8")]
|
||||||
|
|
||||||
|
[node name="StaticBody3D" type="StaticBody3D" parent="."]
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="StaticBody3D"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
|
||||||
|
shape = SubResource("BoxShape3D_78si8")
|
||||||
|
|
||||||
|
[node name="MeshInstance3D" type="MeshInstance3D" parent="StaticBody3D"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -0.5, 0)
|
||||||
|
material_override = SubResource("StandardMaterial3D_3vl0c")
|
||||||
|
mesh = SubResource("BoxMesh_aptux")
|
||||||
78
src/models/base_model.gd
Normal file
78
src/models/base_model.gd
Normal file
@@ -0,0 +1,78 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
const PIXEL_SIZE := 0.0048
|
||||||
|
const HEROIC_SCALE := 57.2
|
||||||
|
const W_H_RATIO := 1.4
|
||||||
|
|
||||||
|
# Basic Variables
|
||||||
|
@export var ModelName: String
|
||||||
|
@export var CustomName: String
|
||||||
|
@export var MovementDistance: int
|
||||||
|
@export var BaseSize: String # In mm
|
||||||
|
@export var MovementType: String
|
||||||
|
@export var RangeCharacteristic: DiceModifier
|
||||||
|
@export var MeleeCharacteristic: DiceModifier
|
||||||
|
@export var ArmorCharacteristic: DiceModifier
|
||||||
|
@export var KeywordsList: Array[String]
|
||||||
|
@export var CharacterSprite2D: CompressedTexture2D
|
||||||
|
|
||||||
|
|
||||||
|
func _init() -> void:
|
||||||
|
pass
|
||||||
|
|
||||||
|
# Called when the node enters the scene tree for the first time.
|
||||||
|
func _ready() -> void:
|
||||||
|
var base_model := _get_base_model(BaseSize)
|
||||||
|
var base_size = _get_base_size(BaseSize)
|
||||||
|
if $Pivot/Base.mesh == null and base_model != null:
|
||||||
|
$Pivot/Base.mesh = load(base_model)
|
||||||
|
$Pivot/Base.scale.x = HEROIC_SCALE / 1000
|
||||||
|
$Pivot/Base.scale.y = HEROIC_SCALE / 1000
|
||||||
|
$Pivot/Base.scale.z = HEROIC_SCALE / 1000
|
||||||
|
if $Pivot/Sprite2D.texture == null and CharacterSprite2D != null:
|
||||||
|
$Pivot/Sprite2D.texture = CharacterSprite2D
|
||||||
|
$Pivot/Sprite2D.pixel_size = PIXEL_SIZE
|
||||||
|
$Pivot/Sprite2D.position.y = base_size * W_H_RATIO * HEROIC_SCALE / 2
|
||||||
|
$CollisionShape3D.shape.radius = base_size / 2 * HEROIC_SCALE
|
||||||
|
$CollisionShape3D.shape.height = base_size * 1.4 * HEROIC_SCALE
|
||||||
|
$CollisionShape3D.position.y = base_size * 0.7 * HEROIC_SCALE * W_H_RATIO / 2
|
||||||
|
|
||||||
|
|
||||||
|
# Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
func _process(_delta: float) -> void:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
# Utility functions
|
||||||
|
func _get_base_model(size: String) -> String:
|
||||||
|
match size:
|
||||||
|
"25":
|
||||||
|
return "res://assets/bases/base_25.glb"
|
||||||
|
"32":
|
||||||
|
return "res://assets/bases/base_32.obj"
|
||||||
|
"40":
|
||||||
|
return "res://assets/bases/base_40.glb"
|
||||||
|
"50":
|
||||||
|
return "res://assets/bases/base_50.glb"
|
||||||
|
"50":
|
||||||
|
return "res://assets/bases/base_60.glb"
|
||||||
|
"30x60":
|
||||||
|
return "res://assets/bases/base_30x60.glb"
|
||||||
|
return ""
|
||||||
|
|
||||||
|
func _get_base_size(size: String) -> float:
|
||||||
|
match size:
|
||||||
|
"25":
|
||||||
|
return 25.0 / 1000
|
||||||
|
"32":
|
||||||
|
return 32.0 / 1000
|
||||||
|
"40":
|
||||||
|
return 40.0 / 1000
|
||||||
|
"50":
|
||||||
|
return 50.0 / 1000
|
||||||
|
"50":
|
||||||
|
return 60.0 / 1000
|
||||||
|
"30x60":
|
||||||
|
return 60.0 / 1000
|
||||||
|
push_error("Not valid size of %s" % size)
|
||||||
|
return 0
|
||||||
1
src/models/base_model.gd.uid
Normal file
1
src/models/base_model.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://di5g5x80wtaw7
|
||||||
22
src/models/base_model.tscn
Normal file
22
src/models/base_model.tscn
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
[gd_scene load_steps=3 format=3 uid="uid://c26jufswfi2bh"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://di5g5x80wtaw7" path="res://src/models/base_model.gd" id="1_ni6nx"]
|
||||||
|
|
||||||
|
[sub_resource type="CylinderShape3D" id="CylinderShape3D_wfmmx"]
|
||||||
|
|
||||||
|
[node name="BaseModel" type="CharacterBody3D"]
|
||||||
|
script = ExtResource("1_ni6nx")
|
||||||
|
|
||||||
|
[node name="Pivot" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="Sprite2D" type="Sprite3D" parent="Pivot"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.30011, 0)
|
||||||
|
pixel_size = 0.0048
|
||||||
|
billboard = 2
|
||||||
|
|
||||||
|
[node name="Base" type="MeshInstance3D" parent="Pivot"]
|
||||||
|
transform = Transform3D(57.2, 0, 0, 0, 57.2, 0, 0, 0, 57.2, 0, 0, 0)
|
||||||
|
skeleton = NodePath("")
|
||||||
|
|
||||||
|
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
||||||
|
shape = SubResource("CylinderShape3D_wfmmx")
|
||||||
@@ -1,22 +1,43 @@
|
|||||||
[gd_scene load_steps=4 format=3 uid="uid://c26jufswfi2bh"]
|
[gd_scene load_steps=7 format=3 uid="uid://ds20afeq5fbty"]
|
||||||
|
|
||||||
[ext_resource type="Texture2D" uid="uid://dn2uhj5jnbcj1" path="res://assets/cartas/combat_priest.png" id="1_iwweb"]
|
[ext_resource type="PackedScene" uid="uid://c26jufswfi2bh" path="res://src/models/base_model.tscn" id="1_t6p38"]
|
||||||
[ext_resource type="PackedScene" uid="uid://jcm4ger3ns40" path="res://assets/bases/Bases Papel-base_32.glb" id="2_ni6nx"]
|
[ext_resource type="Script" uid="uid://4h1cvticrj7u" path="res://src/utils/dice_modifier.gd" id="2_ni6nx"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://cc85nihxm3set" path="res://assets/cartas/combat_priest_pixel.png" id="3_ni6nx"]
|
||||||
|
|
||||||
[sub_resource type="CylinderShape3D" id="CylinderShape3D_wfmmx"]
|
[sub_resource type="Resource" id="Resource_wfmmx"]
|
||||||
|
script = ExtResource("2_ni6nx")
|
||||||
|
extra = 0
|
||||||
|
dice = 2
|
||||||
|
fixed = 0
|
||||||
|
metadata/_custom_type_script = "uid://4h1cvticrj7u"
|
||||||
|
|
||||||
[node name="Model" type="CharacterBody3D"]
|
[sub_resource type="Resource" id="Resource_s0nyo"]
|
||||||
|
script = ExtResource("2_ni6nx")
|
||||||
|
extra = 0
|
||||||
|
dice = 2
|
||||||
|
fixed = 0
|
||||||
|
metadata/_custom_type_script = "uid://4h1cvticrj7u"
|
||||||
|
|
||||||
[node name="Pivot" type="Node3D" parent="."]
|
[sub_resource type="Resource" id="Resource_l764g"]
|
||||||
|
script = ExtResource("2_ni6nx")
|
||||||
|
extra = 0
|
||||||
|
dice = 0
|
||||||
|
fixed = 0
|
||||||
|
metadata/_custom_type_script = "uid://4h1cvticrj7u"
|
||||||
|
|
||||||
[node name="Sprite3D" type="Sprite3D" parent="Pivot"]
|
[node name="BaseModel" instance=ExtResource("1_t6p38")]
|
||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1.30011, 0)
|
ModelName = " Heretic Priest "
|
||||||
pixel_size = 0.0048
|
MovementDistance = 6
|
||||||
billboard = 2
|
BaseSize = "32"
|
||||||
texture = ExtResource("1_iwweb")
|
MovementType = "Infantry"
|
||||||
|
RangeCharacteristic = SubResource("Resource_wfmmx")
|
||||||
|
MeleeCharacteristic = SubResource("Resource_s0nyo")
|
||||||
|
ArmorCharacteristic = SubResource("Resource_l764g")
|
||||||
|
KeywordsList = Array[String](["HERETIC", "ELITE", "TOUGH", "LEADER"])
|
||||||
|
CharacterSprite2D = ExtResource("3_ni6nx")
|
||||||
|
|
||||||
[node name="Base" parent="Pivot" instance=ExtResource("2_ni6nx")]
|
[node name="Sprite2D" parent="Pivot" index="0"]
|
||||||
transform = Transform3D(57.2, 0, 0, 0, 57.2, 0, 0, 0, 57.2, 0, 0, 0)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
|
||||||
|
|
||||||
[node name="CollisionShape3D" type="CollisionShape3D" parent="."]
|
[node name="Base" parent="Pivot" index="1"]
|
||||||
shape = SubResource("CylinderShape3D_wfmmx")
|
transform = Transform3D(0.057, 0, 0, 0, -2.49155e-09, 0.057, 0, -0.057, -2.49155e-09, 0, 0, 0)
|
||||||
|
|||||||
21
src/utils/dice_modifier.gd
Normal file
21
src/utils/dice_modifier.gd
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
extends Resource
|
||||||
|
class_name DiceModifier
|
||||||
|
|
||||||
|
@export var extra := 0 # the Sum of 3, 4 or 1D6
|
||||||
|
@export var dice := 0 # Plus or minus dice
|
||||||
|
@export var fixed := 0 # Plus or minus points to the dice result
|
||||||
|
|
||||||
|
func _init(_dice:=0, _fixed:=0, _extra:=0):
|
||||||
|
dice = _dice
|
||||||
|
fixed = _fixed
|
||||||
|
extra = _extra
|
||||||
|
|
||||||
|
static func sum(modifiers:Array[DiceModifier]):
|
||||||
|
var _dice = 0
|
||||||
|
var _fixed = 0
|
||||||
|
var _extra = 0
|
||||||
|
for modifier in modifiers:
|
||||||
|
_dice += modifier.dice
|
||||||
|
_fixed += modifier.fixed
|
||||||
|
_extra += modifier.extra
|
||||||
|
return DiceModifier.new(_dice, _fixed, _extra)
|
||||||
1
src/utils/dice_modifier.gd.uid
Normal file
1
src/utils/dice_modifier.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://4h1cvticrj7u
|
||||||
9
src/utils/dice_modifier.tres
Normal file
9
src/utils/dice_modifier.tres
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
[gd_resource type="Resource" script_class="DiceModifier" load_steps=2 format=3 uid="uid://5fe3siaxtp0u"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://4h1cvticrj7u" path="res://src/utils/dice_modifier.gd" id="1_3o675"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
script = ExtResource("1_3o675")
|
||||||
|
extra = 0
|
||||||
|
dice = 0
|
||||||
|
fixed = 0
|
||||||
Reference in New Issue
Block a user