Initial commit for new project

This commit is contained in:
Keenan Turley
2024-12-20 21:19:27 -08:00
commit 58cca5bd6b
10 changed files with 717 additions and 0 deletions

100
.editorconfig Normal file
View File

@@ -0,0 +1,100 @@
# Remove the line below if you want to inherit .editorconfig settings from higher directories
root = true
# C# files
[*.{cs,razor}]
indent_style = tab
indent_size = 4
tab_size = 4
# New line preferences
end_of_line = crlf
insert_final_newline = true
#### C# Coding Conventions ####
# Expression-bodied members
csharp_style_expression_bodied_accessors = true:silent
csharp_style_expression_bodied_constructors = false:silent
csharp_style_expression_bodied_indexers = true:silent
csharp_style_expression_bodied_lambdas = true:silent
csharp_style_expression_bodied_local_functions = false:silent
csharp_style_expression_bodied_methods = false:silent
csharp_style_expression_bodied_operators = false:silent
csharp_style_expression_bodied_properties = true:silent
# Pattern matching preferences
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
csharp_style_prefer_not_pattern = true:suggestion
csharp_style_prefer_pattern_matching = true:silent
csharp_style_prefer_switch_expression = true:suggestion
# Null-checking preferences
csharp_style_conditional_delegate_call = true:suggestion
# Code-block preferences
csharp_prefer_braces = true:silent
# Expression-level preferences
csharp_prefer_simple_default_expression = true:suggestion
csharp_style_deconstructed_variable_declaration = true:suggestion
csharp_style_implicit_object_creation_when_type_is_apparent = true:suggestion
csharp_style_inlined_variable_declaration = true:suggestion
csharp_style_pattern_local_over_anonymous_function = true:suggestion
csharp_style_prefer_index_operator = true:suggestion
csharp_style_prefer_range_operator = true:suggestion
csharp_style_throw_expression = true:suggestion
csharp_style_unused_value_assignment_preference = discard_variable:suggestion
csharp_style_unused_value_expression_statement_preference = discard_variable:silent
# 'using' directive preferences
csharp_using_directive_placement = outside_namespace:silent
#### C# Formatting Rules ####
# New line preferences
csharp_new_line_before_catch = true
csharp_new_line_before_else = true
csharp_new_line_before_finally = true
csharp_new_line_before_members_in_anonymous_types = true
csharp_new_line_before_members_in_object_initializers = true
csharp_new_line_before_open_brace = all
csharp_new_line_between_query_expression_clauses = true
# Indentation preferences
csharp_indent_block_contents = true
csharp_indent_braces = false
csharp_indent_case_contents = true
csharp_indent_case_contents_when_block = true
csharp_indent_labels = no_change
csharp_indent_switch_labels = true
# Space preferences
csharp_space_after_cast = false
csharp_space_after_colon_in_inheritance_clause = true
csharp_space_after_comma = true
csharp_space_after_dot = false
csharp_space_after_keywords_in_control_flow_statements = true
csharp_space_after_semicolon_in_for_statement = true
csharp_space_around_binary_operators = before_and_after
csharp_space_around_declaration_statements = false
csharp_space_before_colon_in_inheritance_clause = true
csharp_space_before_comma = false
csharp_space_before_dot = false
csharp_space_before_open_square_brackets = false
csharp_space_before_semicolon_in_for_statement = false
csharp_space_between_empty_square_brackets = false
csharp_space_between_method_call_empty_parameter_list_parentheses = false
csharp_space_between_method_call_name_and_opening_parenthesis = false
csharp_space_between_method_call_parameter_list_parentheses = true
csharp_space_between_method_declaration_empty_parameter_list_parentheses = false
csharp_space_between_method_declaration_name_and_open_parenthesis = false
csharp_space_between_method_declaration_parameter_list_parentheses = true
csharp_space_between_parentheses = control_flow_statements
csharp_space_between_square_brackets = false
# Wrapping preferences
csharp_preserve_single_line_blocks = true
csharp_preserve_single_line_statements = true

28
.gitignore vendored Normal file
View File

@@ -0,0 +1,28 @@
# This file describes files and paths that should not be tracked by Git version control
# https://git-scm.com/docs/gitignore
# Auto-generated code editor files
.vs/*
.vscode/*
*.csproj
obj
bin
Properties/*
code/obj/*
code/Properties/*
# Auto-generated asset related files
.sbox/*
*.generated.*
*.*_c
!*.shader_c
*.los
*.vpk
*launchSettings.json
*.sln
*idea
# Exported / standalone games
Exports/

303
Assets/scenes/minimal.scene Normal file
View File

@@ -0,0 +1,303 @@
{
"__guid": "325a4042-0696-43dd-a79d-dcc314299ba3",
"GameObjects": [
{
"__guid": "bfc59c12-1ed2-4f91-8956-a95a315eac3c",
"Flags": 0,
"Name": "Sun",
"Rotation": "-0.0729315,0.4822396,0.1305433,0.8631827",
"Tags": "light_directional,light",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.DirectionalLight",
"__guid": "d3659344-a90d-48fa-927a-095f70fe041f",
"FogMode": "Enabled",
"FogStrength": 1,
"LightColor": "0.94419,0.97767,1,1",
"Shadows": true,
"SkyColor": "0.2532,0.32006,0.35349,1"
}
]
},
{
"__guid": "00344a8c-fa5e-45ae-b12a-10bb781a1dc3",
"Flags": 0,
"Name": "2D Skybox",
"Tags": "skybox",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.SkyBox2D",
"__guid": "de79e9e0-5c37-4c54-ac67-bfcdb1d5483b",
"SkyMaterial": "materials/skybox/skybox_day_01.vmat",
"Tint": "1,1,1,1"
},
{
"__type": "Sandbox.EnvmapProbe",
"__guid": "f3e304db-baab-4c1a-a4ec-8442585c2d62",
"Texture": "textures/cubemaps/default2.vtex",
"Bounds": {
"Mins": "-512,-512,-512",
"Maxs": "512,512,512"
},
"DelayBetweenUpdates": 0.1,
"Feathering": 0.02,
"FrameInterval": 5,
"MaxDistance": 512,
"Projection": "Sphere",
"RenderDynamically": false,
"TintColor": "1,1,1,1",
"UpdateStrategy": "OnEnabled",
"ZFar": 4096,
"ZNear": 16
}
]
},
{
"__guid": "6ad70641-3c6c-4402-9c85-9a4969af4764",
"Flags": 0,
"Name": "Plane",
"Scale": "5,5,5",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.ModelRenderer",
"__guid": "0b6a18bf-fdb8-4661-970e-ef635bfa9baa",
"BodyGroups": 18446744073709551615,
"MaterialOverride": "materials/default.vmat",
"Model": "models/dev/plane.vmdl",
"RenderType": "On",
"Tint": "0.39546,0.51163,0.27128,1"
},
{
"__type": "Sandbox.BoxCollider",
"__guid": "0715cb55-1733-4f5e-8560-c288b8695631",
"Center": "0,0,-5",
"IsTrigger": false,
"Scale": "100,100,10",
"Static": false
}
]
},
{
"__guid": "3c2490ef-54a0-49bb-8f13-490e40aa51d1",
"Flags": 0,
"Name": "Cube",
"Position": "21.41682,74.1244,14.40159",
"Rotation": "0.00000001819328,-0.00000000000000008235059,0.3052325,0.952278",
"Scale": "0.5632889,0.5632889,0.5632889",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.ModelRenderer",
"__guid": "b9121ffa-617c-4ccc-a2aa-8acc98727590",
"BodyGroups": 18446744073709551615,
"MaterialOverride": "materials/default.vmat",
"Model": "models/dev/box.vmdl",
"RenderType": "On",
"Tint": "1,0,0.93333,1"
},
{
"__type": "Sandbox.BoxCollider",
"__guid": "8bb3ebcf-1ec9-4b20-bf31-4aece0950008",
"Center": "0,0,0",
"IsTrigger": false,
"Scale": "50,50,50",
"Static": false
},
{
"__type": "Sandbox.Rigidbody",
"__guid": "4aaa0334-6785-4716-9bae-869559ea6e10",
"AngularDamping": 0,
"Gravity": true,
"LinearDamping": 0,
"Locking": {},
"MassOverride": 0,
"MotionEnabled": true,
"RigidbodyFlags": 0,
"StartAsleep": false
}
]
},
{
"__guid": "523e3e8f-a4ec-4ec1-af9a-d86ffc9c17e1",
"Flags": 0,
"Name": "Cube (1)",
"Position": "40.81348,46.97572,14.40159",
"Rotation": "0.00000001819328,-0.00000000000000008235059,0.3052325,0.952278",
"Scale": "0.5632889,0.5632889,0.5632889",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.ModelRenderer",
"__guid": "9e8a546d-a41d-44b5-9906-22cea00e1066",
"BodyGroups": 18446744073709551615,
"MaterialOverride": "materials/default.vmat",
"Model": "models/dev/box.vmdl",
"RenderType": "On",
"Tint": "1,0,0.93333,1"
},
{
"__type": "Sandbox.BoxCollider",
"__guid": "adf22580-7a25-4d7f-b1c3-3fb8fabf1612",
"Center": "0,0,0",
"IsTrigger": false,
"Scale": "50,50,50",
"Static": false
},
{
"__type": "Sandbox.Rigidbody",
"__guid": "e53bfcb0-7f44-41d0-8d51-263bdc173a57",
"AngularDamping": 0,
"Gravity": true,
"LinearDamping": 0,
"Locking": {},
"MassOverride": 0,
"MotionEnabled": true,
"RigidbodyFlags": 0,
"StartAsleep": false
}
]
},
{
"__guid": "5b483a09-bbf2-4949-98c7-a73b789d0ee7",
"Flags": 0,
"Name": "Cube (2)",
"Position": "49.53707,34.08896,43.67614",
"Rotation": "0.00000001819328,-0.00000000000000008235059,0.3052325,0.952278",
"Scale": "0.5632889,0.5632889,0.5632889",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.ModelRenderer",
"__guid": "ac284ab8-cdb7-4ba6-92de-d9be36088b1b",
"BodyGroups": 18446744073709551615,
"MaterialOverride": "materials/default.vmat",
"Model": "models/dev/box.vmdl",
"RenderType": "On",
"Tint": "1,0,0.93333,1"
},
{
"__type": "Sandbox.BoxCollider",
"__guid": "ca4eb284-231e-4c84-9bc4-7ba89962f307",
"Center": "0,0,0",
"IsTrigger": false,
"Scale": "50,50,50",
"Static": false
},
{
"__type": "Sandbox.Rigidbody",
"__guid": "61ef15dd-3eb2-4f52-8b9a-315f477f79b7",
"AngularDamping": 0,
"Gravity": true,
"LinearDamping": 0,
"Locking": {},
"MassOverride": 0,
"MotionEnabled": true,
"RigidbodyFlags": 0,
"StartAsleep": false
}
]
},
{
"__guid": "3ee1c9f4-07be-4e0b-8b23-67bee2d8ec8a",
"Flags": 0,
"Name": "Camera",
"Position": "-267.452,-379.653,297.7903",
"Rotation": "-0.1448582,0.2860239,0.4279631,0.8450171",
"Enabled": true,
"Components": [
{
"__type": "Sandbox.CameraComponent",
"__guid": "cf3cbf96-22b6-4be4-a5d0-672a96c17f9f",
"BackgroundColor": "0.33333,0.46275,0.52157,1",
"ClearFlags": "All",
"FieldOfView": 60,
"IsMainCamera": true,
"Orthographic": false,
"OrthographicHeight": 1204,
"Priority": 1,
"RenderExcludeTags": "",
"RenderTags": "",
"TargetEye": "None",
"Viewport": "0,0,1,1",
"ZFar": 10000,
"ZNear": 10
},
{
"__type": "Sandbox.Bloom",
"__guid": "d73ef723-c888-41d4-802e-f797c79318be",
"BloomColor": {
"color": [
{
"c": "1,1,1,1"
},
{
"t": 1,
"c": "1,1,1,1"
}
],
"alpha": []
},
"BloomCurve": [
{
"y": 0.5
},
{
"x": 1,
"y": 1
}
],
"Mode": "Additive",
"Strength": 0.5,
"Threshold": 0.5,
"ThresholdWidth": 0.5
},
{
"__type": "Sandbox.Tonemapping",
"__guid": "9d76f362-7227-40eb-a189-69353c780c46",
"__version": 1,
"ExposureBias": 2,
"ExposureCompensation": 0,
"ExposureMethod": "RGB",
"MaximumExposure": 2,
"MinimumExposure": 1,
"Mode": "Legacy",
"Rate": 1
},
{
"__type": "Sandbox.Sharpen",
"__guid": "0bffee5e-19f2-41c4-88f9-faefbcce6bf4",
"Scale": 0.2
}
]
}
],
"SceneProperties": {
"FixedUpdateFrequency": 50,
"MaxFixedUpdates": 5,
"NetworkFrequency": 60,
"NetworkInterpolation": true,
"ThreadedAnimation": true,
"TimeScale": 1,
"UseFixedUpdate": true,
"NavMesh": {
"Enabled": false,
"IncludeStaticBodies": true,
"IncludeKeyframedBodies": true,
"EditorAutoUpdate": true,
"AgentHeight": 64,
"AgentRadius": 16,
"AgentStepSize": 18,
"AgentMaxSlope": 40,
"ExcludedBodies": "",
"IncludedBodies": ""
}
},
"Title": "minimal",
"Description": "",
"ResourceVersion": 1,
"__references": [],
"__version": 1
}

4
Editor/Assembly.cs Normal file
View File

@@ -0,0 +1,4 @@
global using Sandbox;
global using Editor;
global using System.Collections.Generic;
global using System.Linq;

8
Editor/MyEditorMenu.cs Normal file
View File

@@ -0,0 +1,8 @@
public static class MyEditorMenu
{
[Menu("Editor", "$title/My Menu Option")]
public static void OpenMyMenu()
{
EditorUtility.DisplayDialog("It worked!", "This is being called from your library's editor code!");
}
}

View File

@@ -0,0 +1,41 @@
{
"Version": 2,
"Defaults": {
"solid": "Collide",
"trigger": "Trigger",
"ladder": "Ignore",
"water": "Trigger",
"sound": "Unset"
},
"Pairs": [
{
"a": "solid",
"b": "solid",
"r": "Collide"
},
{
"a": "trigger",
"b": "playerclip",
"r": "Ignore"
},
{
"a": "trigger",
"b": "solid",
"r": "Trigger"
},
{
"a": "playerclip",
"b": "solid",
"r": "Collide"
},
{
"a": "sound",
"b": "solid",
"r": "Collide"
}
],
"__guid": "df45fe25-bfe7-4b2c-a6cd-4404c2da6e11",
"__schema": "configdata",
"__type": "CollisionRules",
"__version": 2
}

View File

@@ -0,0 +1,194 @@
{
"Actions": [
{
"Name": "Forward",
"KeyboardCode": "W",
"GamepadCode": "None",
"GroupName": "Movement"
},
{
"Name": "Backward",
"KeyboardCode": "S",
"GamepadCode": "None",
"GroupName": "Movement"
},
{
"Name": "Left",
"KeyboardCode": "A",
"GamepadCode": "None",
"GroupName": "Movement"
},
{
"Name": "Right",
"KeyboardCode": "D",
"GamepadCode": "None",
"GroupName": "Movement"
},
{
"Name": "Jump",
"KeyboardCode": "space",
"GamepadCode": "A",
"GroupName": "Movement"
},
{
"Name": "Run",
"KeyboardCode": "shift",
"GamepadCode": "LeftJoystickButton",
"GroupName": "Movement"
},
{
"Name": "Walk",
"KeyboardCode": "alt",
"GamepadCode": "None",
"GroupName": "Movement"
},
{
"Name": "Duck",
"KeyboardCode": "ctrl",
"GamepadCode": "B",
"GroupName": "Movement"
},
{
"Name": "attack1",
"KeyboardCode": "mouse1",
"GamepadCode": "RightTrigger",
"GroupName": "Actions"
},
{
"Name": "attack2",
"KeyboardCode": "mouse2",
"GamepadCode": "LeftTrigger",
"GroupName": "Actions"
},
{
"Name": "reload",
"KeyboardCode": "r",
"GamepadCode": "X",
"GroupName": "Actions"
},
{
"Name": "use",
"KeyboardCode": "e",
"GamepadCode": "Y",
"GroupName": "Actions"
},
{
"Name": "Slot1",
"KeyboardCode": "1",
"GamepadCode": "DpadWest",
"GroupName": "Inventory"
},
{
"Name": "Slot2",
"KeyboardCode": "2",
"GamepadCode": "DpadEast",
"GroupName": "Inventory"
},
{
"Name": "Slot3",
"KeyboardCode": "3",
"GamepadCode": "DpadSouth",
"GroupName": "Inventory"
},
{
"Name": "Slot4",
"KeyboardCode": "4",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "Slot5",
"KeyboardCode": "5",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "Slot6",
"KeyboardCode": "6",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "Slot7",
"KeyboardCode": "7",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "Slot8",
"KeyboardCode": "8",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "Slot9",
"KeyboardCode": "9",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "Slot0",
"KeyboardCode": "0",
"GamepadCode": "None",
"GroupName": "Inventory"
},
{
"Name": "SlotPrev",
"KeyboardCode": "mouse4",
"GamepadCode": "SwitchLeftBumper",
"GroupName": "Inventory"
},
{
"Name": "SlotNext",
"KeyboardCode": "mouse5",
"GamepadCode": "SwitchRightBumper",
"GroupName": "Inventory"
},
{
"Name": "View",
"KeyboardCode": "C",
"GamepadCode": "RightJoystickButton",
"GroupName": "Other"
},
{
"Name": "Voice",
"KeyboardCode": "v",
"GamepadCode": "None",
"GroupName": "Other"
},
{
"Name": "Drop",
"KeyboardCode": "g",
"GamepadCode": "None",
"GroupName": "Other"
},
{
"Name": "Flashlight",
"KeyboardCode": "f",
"GamepadCode": "DpadNorth",
"GroupName": "Other"
},
{
"Name": "Score",
"KeyboardCode": "tab",
"GamepadCode": "SwitchLeftMenu",
"GroupName": "Other"
},
{
"Name": "Menu",
"KeyboardCode": "Q",
"GamepadCode": "SwitchRightMenu",
"GroupName": "Other"
},
{
"Name": "Chat",
"KeyboardCode": "enter",
"GamepadCode": "None",
"GroupName": "Other"
}
],
"__guid": "c4d5984f-d14b-4cce-91f4-9109c68cbb5b",
"__schema": "configdata",
"__type": "InputSettings",
"__version": 1
}

3
code/Assembly.cs Normal file
View File

@@ -0,0 +1,3 @@
global using Sandbox;
global using System.Collections.Generic;
global using System.Linq;

9
code/MyComponent.cs Normal file
View File

@@ -0,0 +1,9 @@
public sealed class MyComponent : Component
{
[Property] public string StringProperty { get; set; }
protected override void OnUpdate()
{
}
}

27
lucker.sbproj Normal file
View File

@@ -0,0 +1,27 @@
{
"Title": "Lucker",
"Type": "game",
"Org": "local",
"Ident": "lucker",
"Schema": 1,
"IncludeSourceFiles": false,
"Resources": null,
"PackageReferences": [],
"EditorReferences": null,
"IsWhitelistDisabled": false,
"Metadata": {
"MaxPlayers": 64,
"MinPlayers": 1,
"TickRate": 50,
"GameNetworkType": "Multiplayer",
"MapSelect": "Unrestricted",
"MapList": [
"facepunch.flatgrass"
],
"RankType": "None",
"PerMapRanking": false,
"LeaderboardType": "None",
"CsProjName": "",
"StartupScene": "scenes/minimal.scene"
}
}