Ancien code projet
675
.gitignore
vendored
Normal file
@@ -0,0 +1,675 @@
|
||||
# Created by https://www.toptal.com/developers/gitignore/api/csharp,visualstudio,visualstudiocode,rider
|
||||
# Edit at https://www.toptal.com/developers/gitignore?templates=csharp,visualstudio,visualstudiocode,rider
|
||||
|
||||
### Csharp ###
|
||||
## Ignore Visual Studio temporary files, build results, and
|
||||
## files generated by popular Visual Studio add-ons.
|
||||
##
|
||||
## Get latest from https://github.com/github/gitignore/blob/main/VisualStudio.gitignore
|
||||
|
||||
# User-specific files
|
||||
*.rsuser
|
||||
*.suo
|
||||
*.user
|
||||
*.userosscache
|
||||
*.sln.docstates
|
||||
|
||||
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||
*.userprefs
|
||||
|
||||
# Mono auto generated files
|
||||
mono_crash.*
|
||||
|
||||
# Build results
|
||||
[Dd]ebug/
|
||||
[Dd]ebugPublic/
|
||||
[Rr]elease/
|
||||
[Rr]eleases/
|
||||
x64/
|
||||
x86/
|
||||
[Ww][Ii][Nn]32/
|
||||
[Aa][Rr][Mm]/
|
||||
[Aa][Rr][Mm]64/
|
||||
bld/
|
||||
[Bb]in/
|
||||
[Oo]bj/
|
||||
[Ll]og/
|
||||
[Ll]ogs/
|
||||
|
||||
# Visual Studio 2015/2017 cache/options directory
|
||||
.vs/
|
||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||
#wwwroot/
|
||||
|
||||
# Visual Studio 2017 auto generated files
|
||||
Generated\ Files/
|
||||
|
||||
# MSTest test Results
|
||||
[Tt]est[Rr]esult*/
|
||||
[Bb]uild[Ll]og.*
|
||||
|
||||
# NUnit
|
||||
*.VisualState.xml
|
||||
TestResult.xml
|
||||
nunit-*.xml
|
||||
|
||||
# Build Results of an ATL Project
|
||||
[Dd]ebugPS/
|
||||
[Rr]eleasePS/
|
||||
dlldata.c
|
||||
|
||||
# Benchmark Results
|
||||
BenchmarkDotNet.Artifacts/
|
||||
|
||||
# .NET Core
|
||||
project.lock.json
|
||||
project.fragment.lock.json
|
||||
artifacts/
|
||||
|
||||
# ASP.NET Scaffolding
|
||||
ScaffoldingReadMe.txt
|
||||
|
||||
# StyleCop
|
||||
StyleCopReport.xml
|
||||
|
||||
# Files built by Visual Studio
|
||||
*_i.c
|
||||
*_p.c
|
||||
*_h.h
|
||||
*.ilk
|
||||
*.meta
|
||||
*.obj
|
||||
*.iobj
|
||||
*.pch
|
||||
*.pdb
|
||||
*.ipdb
|
||||
*.pgc
|
||||
*.pgd
|
||||
*.rsp
|
||||
*.sbr
|
||||
*.tlb
|
||||
*.tli
|
||||
*.tlh
|
||||
*.tmp
|
||||
*.tmp_proj
|
||||
*_wpftmp.csproj
|
||||
*.log
|
||||
*.tlog
|
||||
*.vspscc
|
||||
*.vssscc
|
||||
.builds
|
||||
*.pidb
|
||||
*.svclog
|
||||
*.scc
|
||||
|
||||
# Chutzpah Test files
|
||||
_Chutzpah*
|
||||
|
||||
# Visual C++ cache files
|
||||
ipch/
|
||||
*.aps
|
||||
*.ncb
|
||||
*.opendb
|
||||
*.opensdf
|
||||
*.sdf
|
||||
*.cachefile
|
||||
*.VC.db
|
||||
*.VC.VC.opendb
|
||||
|
||||
# Visual Studio profiler
|
||||
*.psess
|
||||
*.vsp
|
||||
*.vspx
|
||||
*.sap
|
||||
|
||||
# Visual Studio Trace Files
|
||||
*.e2e
|
||||
|
||||
# TFS 2012 Local Workspace
|
||||
$tf/
|
||||
|
||||
# Guidance Automation Toolkit
|
||||
*.gpState
|
||||
|
||||
# ReSharper is a .NET coding add-in
|
||||
_ReSharper*/
|
||||
*.[Rr]e[Ss]harper
|
||||
*.DotSettings.user
|
||||
|
||||
# TeamCity is a build add-in
|
||||
_TeamCity*
|
||||
|
||||
# DotCover is a Code Coverage Tool
|
||||
*.dotCover
|
||||
|
||||
# AxoCover is a Code Coverage Tool
|
||||
.axoCover/*
|
||||
!.axoCover/settings.json
|
||||
|
||||
# Coverlet is a free, cross platform Code Coverage Tool
|
||||
coverage*.json
|
||||
coverage*.xml
|
||||
coverage*.info
|
||||
|
||||
# Visual Studio code coverage results
|
||||
*.coverage
|
||||
*.coveragexml
|
||||
|
||||
# NCrunch
|
||||
_NCrunch_*
|
||||
.*crunch*.local.xml
|
||||
nCrunchTemp_*
|
||||
|
||||
# MightyMoose
|
||||
*.mm.*
|
||||
AutoTest.Net/
|
||||
|
||||
# Web workbench (sass)
|
||||
.sass-cache/
|
||||
|
||||
# Installshield output folder
|
||||
[Ee]xpress/
|
||||
|
||||
# DocProject is a documentation generator add-in
|
||||
DocProject/buildhelp/
|
||||
DocProject/Help/*.HxT
|
||||
DocProject/Help/*.HxC
|
||||
DocProject/Help/*.hhc
|
||||
DocProject/Help/*.hhk
|
||||
DocProject/Help/*.hhp
|
||||
DocProject/Help/Html2
|
||||
DocProject/Help/html
|
||||
|
||||
# Click-Once directory
|
||||
publish/
|
||||
|
||||
# Publish Web Output
|
||||
*.[Pp]ublish.xml
|
||||
*.azurePubxml
|
||||
# Note: Comment the next line if you want to checkin your web deploy settings,
|
||||
# but database connection strings (with potential passwords) will be unencrypted
|
||||
*.pubxml
|
||||
*.publishproj
|
||||
|
||||
# Microsoft Azure Web App publish settings. Comment the next line if you want to
|
||||
# checkin your Azure Web App publish settings, but sensitive information contained
|
||||
# in these scripts will be unencrypted
|
||||
PublishScripts/
|
||||
|
||||
# NuGet Packages
|
||||
*.nupkg
|
||||
# NuGet Symbol Packages
|
||||
*.snupkg
|
||||
# The packages folder can be ignored because of Package Restore
|
||||
**/[Pp]ackages/*
|
||||
# except build/, which is used as an MSBuild target.
|
||||
!**/[Pp]ackages/build/
|
||||
# Uncomment if necessary however generally it will be regenerated when needed
|
||||
#!**/[Pp]ackages/repositories.config
|
||||
# NuGet v3's project.json files produces more ignorable files
|
||||
*.nuget.props
|
||||
*.nuget.targets
|
||||
|
||||
# Microsoft Azure Build Output
|
||||
csx/
|
||||
*.build.csdef
|
||||
|
||||
# Microsoft Azure Emulator
|
||||
ecf/
|
||||
rcf/
|
||||
|
||||
# Windows Store app package directories and files
|
||||
AppPackages/
|
||||
BundleArtifacts/
|
||||
Package.StoreAssociation.xml
|
||||
_pkginfo.txt
|
||||
*.appx
|
||||
*.appxbundle
|
||||
*.appxupload
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
*.[Cc]ache
|
||||
# but keep track of directories ending in .cache
|
||||
!?*.[Cc]ache/
|
||||
|
||||
# Others
|
||||
ClientBin/
|
||||
~$*
|
||||
*~
|
||||
*.dbmdl
|
||||
*.dbproj.schemaview
|
||||
*.jfm
|
||||
*.pfx
|
||||
*.publishsettings
|
||||
orleans.codegen.cs
|
||||
|
||||
# Including strong name files can present a security risk
|
||||
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
|
||||
#*.snk
|
||||
|
||||
# Since there are multiple workflows, uncomment next line to ignore bower_components
|
||||
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
|
||||
#bower_components/
|
||||
|
||||
# RIA/Silverlight projects
|
||||
Generated_Code/
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
_UpgradeReport_Files/
|
||||
Backup*/
|
||||
UpgradeLog*.XML
|
||||
UpgradeLog*.htm
|
||||
ServiceFabricBackup/
|
||||
*.rptproj.bak
|
||||
|
||||
# SQL Server files
|
||||
*.mdf
|
||||
*.ldf
|
||||
*.ndf
|
||||
|
||||
# Business Intelligence projects
|
||||
*.rdl.data
|
||||
*.bim.layout
|
||||
*.bim_*.settings
|
||||
*.rptproj.rsuser
|
||||
*- [Bb]ackup.rdl
|
||||
*- [Bb]ackup ([0-9]).rdl
|
||||
*- [Bb]ackup ([0-9][0-9]).rdl
|
||||
|
||||
# Microsoft Fakes
|
||||
FakesAssemblies/
|
||||
|
||||
# GhostDoc plugin setting file
|
||||
*.GhostDoc.xml
|
||||
|
||||
# Node.js Tools for Visual Studio
|
||||
.ntvs_analysis.dat
|
||||
node_modules/
|
||||
|
||||
# Visual Studio 6 build log
|
||||
*.plg
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
*.opt
|
||||
|
||||
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
|
||||
*.vbw
|
||||
|
||||
# Visual Studio 6 auto-generated project file (contains which files were open etc.)
|
||||
*.vbp
|
||||
|
||||
# Visual Studio 6 workspace and project file (working project files containing files to include in project)
|
||||
*.dsw
|
||||
*.dsp
|
||||
|
||||
# Visual Studio 6 technical files
|
||||
|
||||
# Visual Studio LightSwitch build output
|
||||
**/*.HTMLClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/GeneratedArtifacts
|
||||
**/*.DesktopClient/ModelManifest.xml
|
||||
**/*.Server/GeneratedArtifacts
|
||||
**/*.Server/ModelManifest.xml
|
||||
_Pvt_Extensions
|
||||
|
||||
# Paket dependency manager
|
||||
.paket/paket.exe
|
||||
paket-files/
|
||||
|
||||
# FAKE - F# Make
|
||||
.fake/
|
||||
|
||||
# CodeRush personal settings
|
||||
.cr/personal
|
||||
|
||||
# Python Tools for Visual Studio (PTVS)
|
||||
__pycache__/
|
||||
*.pyc
|
||||
|
||||
# Cake - Uncomment if you are using it
|
||||
# tools/**
|
||||
# !tools/packages.config
|
||||
|
||||
# Tabs Studio
|
||||
*.tss
|
||||
|
||||
# Telerik's JustMock configuration file
|
||||
*.jmconfig
|
||||
|
||||
# BizTalk build output
|
||||
*.btp.cs
|
||||
*.btm.cs
|
||||
*.odx.cs
|
||||
*.xsd.cs
|
||||
|
||||
# OpenCover UI analysis results
|
||||
OpenCover/
|
||||
|
||||
# Azure Stream Analytics local run output
|
||||
ASALocalRun/
|
||||
|
||||
# MSBuild Binary and Structured Log
|
||||
*.binlog
|
||||
|
||||
# NVidia Nsight GPU debugger configuration file
|
||||
*.nvuser
|
||||
|
||||
# MFractors (Xamarin productivity tool) working folder
|
||||
.mfractor/
|
||||
|
||||
# Local History for Visual Studio
|
||||
.localhistory/
|
||||
|
||||
# Visual Studio History (VSHistory) files
|
||||
.vshistory/
|
||||
|
||||
# BeatPulse healthcheck temp database
|
||||
healthchecksdb
|
||||
|
||||
# Backup folder for Package Reference Convert tool in Visual Studio 2017
|
||||
MigrationBackup/
|
||||
|
||||
# Ionide (cross platform F# VS Code tools) working folder
|
||||
.ionide/
|
||||
|
||||
# Fody - auto-generated XML schema
|
||||
FodyWeavers.xsd
|
||||
|
||||
# VS Code files for those working on multiple tools
|
||||
.vscode/*
|
||||
!.vscode/settings.json
|
||||
!.vscode/tasks.json
|
||||
!.vscode/launch.json
|
||||
!.vscode/extensions.json
|
||||
*.code-workspace
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
.history/
|
||||
|
||||
# Windows Installer files from build outputs
|
||||
*.cab
|
||||
*.msi
|
||||
*.msix
|
||||
*.msm
|
||||
*.msp
|
||||
|
||||
# JetBrains Rider
|
||||
*.sln.iml
|
||||
|
||||
### Rider ###
|
||||
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
|
||||
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
|
||||
|
||||
# User-specific stuff
|
||||
.idea/**/workspace.xml
|
||||
.idea/**/tasks.xml
|
||||
.idea/**/usage.statistics.xml
|
||||
.idea/**/dictionaries
|
||||
.idea/**/shelf
|
||||
|
||||
# AWS User-specific
|
||||
.idea/**/aws.xml
|
||||
|
||||
# Generated files
|
||||
.idea/**/contentModel.xml
|
||||
|
||||
# Sensitive or high-churn files
|
||||
.idea/**/dataSources/
|
||||
.idea/**/dataSources.ids
|
||||
.idea/**/dataSources.local.xml
|
||||
.idea/**/sqlDataSources.xml
|
||||
.idea/**/dynamic.xml
|
||||
.idea/**/uiDesigner.xml
|
||||
.idea/**/dbnavigator.xml
|
||||
|
||||
# Gradle
|
||||
.idea/**/gradle.xml
|
||||
.idea/**/libraries
|
||||
|
||||
# Gradle and Maven with auto-import
|
||||
# When using Gradle or Maven with auto-import, you should exclude module files,
|
||||
# since they will be recreated, and may cause churn. Uncomment if using
|
||||
# auto-import.
|
||||
# .idea/artifacts
|
||||
# .idea/compiler.xml
|
||||
# .idea/jarRepositories.xml
|
||||
# .idea/modules.xml
|
||||
# .idea/*.iml
|
||||
# .idea/modules
|
||||
# *.iml
|
||||
# *.ipr
|
||||
|
||||
# CMake
|
||||
cmake-build-*/
|
||||
|
||||
# Mongo Explorer plugin
|
||||
.idea/**/mongoSettings.xml
|
||||
|
||||
# File-based project format
|
||||
*.iws
|
||||
|
||||
# IntelliJ
|
||||
out/
|
||||
|
||||
# mpeltonen/sbt-idea plugin
|
||||
.idea_modules/
|
||||
|
||||
# JIRA plugin
|
||||
atlassian-ide-plugin.xml
|
||||
|
||||
# Cursive Clojure plugin
|
||||
.idea/replstate.xml
|
||||
|
||||
# SonarLint plugin
|
||||
.idea/sonarlint/
|
||||
|
||||
# Crashlytics plugin (for Android Studio and IntelliJ)
|
||||
com_crashlytics_export_strings.xml
|
||||
crashlytics.properties
|
||||
crashlytics-build.properties
|
||||
fabric.properties
|
||||
|
||||
# Editor-based Rest Client
|
||||
.idea/httpRequests
|
||||
|
||||
# Android studio 3.1+ serialized cache file
|
||||
.idea/caches/build_file_checksums.ser
|
||||
|
||||
### VisualStudioCode ###
|
||||
!.vscode/*.code-snippets
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
|
||||
# Built Visual Studio Code Extensions
|
||||
*.vsix
|
||||
|
||||
### VisualStudioCode Patch ###
|
||||
# Ignore all local history of files
|
||||
.history
|
||||
.ionide
|
||||
|
||||
### VisualStudio ###
|
||||
|
||||
# User-specific files
|
||||
|
||||
# User-specific files (MonoDevelop/Xamarin Studio)
|
||||
|
||||
# Mono auto generated files
|
||||
|
||||
# Build results
|
||||
|
||||
# Visual Studio 2015/2017 cache/options directory
|
||||
# Uncomment if you have tasks that create the project's static files in wwwroot
|
||||
|
||||
# Visual Studio 2017 auto generated files
|
||||
|
||||
# MSTest test Results
|
||||
|
||||
# NUnit
|
||||
|
||||
# Build Results of an ATL Project
|
||||
|
||||
# Benchmark Results
|
||||
|
||||
# .NET Core
|
||||
|
||||
# ASP.NET Scaffolding
|
||||
|
||||
# StyleCop
|
||||
|
||||
# Files built by Visual Studio
|
||||
|
||||
# Chutzpah Test files
|
||||
|
||||
# Visual C++ cache files
|
||||
|
||||
# Visual Studio profiler
|
||||
|
||||
# Visual Studio Trace Files
|
||||
|
||||
# TFS 2012 Local Workspace
|
||||
|
||||
# Guidance Automation Toolkit
|
||||
|
||||
# ReSharper is a .NET coding add-in
|
||||
|
||||
# TeamCity is a build add-in
|
||||
|
||||
# DotCover is a Code Coverage Tool
|
||||
|
||||
# AxoCover is a Code Coverage Tool
|
||||
|
||||
# Coverlet is a free, cross platform Code Coverage Tool
|
||||
|
||||
# Visual Studio code coverage results
|
||||
|
||||
# NCrunch
|
||||
|
||||
# MightyMoose
|
||||
|
||||
# Web workbench (sass)
|
||||
|
||||
# Installshield output folder
|
||||
|
||||
# DocProject is a documentation generator add-in
|
||||
|
||||
# Click-Once directory
|
||||
|
||||
# Publish Web Output
|
||||
# Note: Comment the next line if you want to checkin your web deploy settings,
|
||||
# but database connection strings (with potential passwords) will be unencrypted
|
||||
|
||||
# Microsoft Azure Web App publish settings. Comment the next line if you want to
|
||||
# checkin your Azure Web App publish settings, but sensitive information contained
|
||||
# in these scripts will be unencrypted
|
||||
|
||||
# NuGet Packages
|
||||
# NuGet Symbol Packages
|
||||
# The packages folder can be ignored because of Package Restore
|
||||
# except build/, which is used as an MSBuild target.
|
||||
# Uncomment if necessary however generally it will be regenerated when needed
|
||||
# NuGet v3's project.json files produces more ignorable files
|
||||
|
||||
# Microsoft Azure Build Output
|
||||
|
||||
# Microsoft Azure Emulator
|
||||
|
||||
# Windows Store app package directories and files
|
||||
|
||||
# Visual Studio cache files
|
||||
# files ending in .cache can be ignored
|
||||
# but keep track of directories ending in .cache
|
||||
|
||||
# Others
|
||||
|
||||
# Including strong name files can present a security risk
|
||||
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
|
||||
|
||||
# Since there are multiple workflows, uncomment next line to ignore bower_components
|
||||
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
|
||||
|
||||
# RIA/Silverlight projects
|
||||
|
||||
# Backup & report files from converting an old project file
|
||||
# to a newer Visual Studio version. Backup files are not needed,
|
||||
# because we have git ;-)
|
||||
|
||||
# SQL Server files
|
||||
|
||||
# Business Intelligence projects
|
||||
|
||||
# Microsoft Fakes
|
||||
|
||||
# GhostDoc plugin setting file
|
||||
|
||||
# Node.js Tools for Visual Studio
|
||||
|
||||
# Visual Studio 6 build log
|
||||
|
||||
# Visual Studio 6 workspace options file
|
||||
|
||||
# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
|
||||
|
||||
# Visual Studio 6 auto-generated project file (contains which files were open etc.)
|
||||
|
||||
# Visual Studio 6 workspace and project file (working project files containing files to include in project)
|
||||
|
||||
# Visual Studio 6 technical files
|
||||
|
||||
# Visual Studio LightSwitch build output
|
||||
|
||||
# Paket dependency manager
|
||||
|
||||
# FAKE - F# Make
|
||||
|
||||
# CodeRush personal settings
|
||||
|
||||
# Python Tools for Visual Studio (PTVS)
|
||||
|
||||
# Cake - Uncomment if you are using it
|
||||
# tools/**
|
||||
# !tools/packages.config
|
||||
|
||||
# Tabs Studio
|
||||
|
||||
# Telerik's JustMock configuration file
|
||||
|
||||
# BizTalk build output
|
||||
|
||||
# OpenCover UI analysis results
|
||||
|
||||
# Azure Stream Analytics local run output
|
||||
|
||||
# MSBuild Binary and Structured Log
|
||||
|
||||
# NVidia Nsight GPU debugger configuration file
|
||||
|
||||
# MFractors (Xamarin productivity tool) working folder
|
||||
|
||||
# Local History for Visual Studio
|
||||
|
||||
# Visual Studio History (VSHistory) files
|
||||
|
||||
# BeatPulse healthcheck temp database
|
||||
|
||||
# Backup folder for Package Reference Convert tool in Visual Studio 2017
|
||||
|
||||
# Ionide (cross platform F# VS Code tools) working folder
|
||||
|
||||
# Fody - auto-generated XML schema
|
||||
|
||||
# VS Code files for those working on multiple tools
|
||||
|
||||
# Local History for Visual Studio Code
|
||||
|
||||
# Windows Installer files from build outputs
|
||||
|
||||
# JetBrains Rider
|
||||
|
||||
### VisualStudio Patch ###
|
||||
# Additional files built by Visual Studio
|
||||
|
||||
# End of https://www.toptal.com/developers/gitignore/api/csharp,visualstudio,visualstudiocode,rider
|
||||
31
Automate.sln
Normal file
@@ -0,0 +1,31 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 17
|
||||
VisualStudioVersion = 17.5.33530.505
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Automate", "Automate\Automate.csproj", "{55CD759F-F7AE-47BC-812E-474FD3CE693E}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CakeBuild", "ZZCakeBuild\CakeBuild.csproj", "{81442847-D1B8-4499-BC9B-03FB65182FBE}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{55CD759F-F7AE-47BC-812E-474FD3CE693E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{55CD759F-F7AE-47BC-812E-474FD3CE693E}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{55CD759F-F7AE-47BC-812E-474FD3CE693E}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{55CD759F-F7AE-47BC-812E-474FD3CE693E}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{81442847-D1B8-4499-BC9B-03FB65182FBE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{81442847-D1B8-4499-BC9B-03FB65182FBE}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{81442847-D1B8-4499-BC9B-03FB65182FBE}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{81442847-D1B8-4499-BC9B-03FB65182FBE}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {DA43A4CC-D6DC-4089-8B21-FD28C6F587BB}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
65
Automate/Automate.csproj
Normal file
@@ -0,0 +1,65 @@
|
||||
<Project Sdk="Microsoft.NET.Sdk">
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>net7.0</TargetFramework>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<OutputPath>bin\$(Configuration)\Mods\mod</OutputPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Reference Include="VintagestoryAPI">
|
||||
<HintPath>$(VINTAGE_STORY)/VintagestoryAPI.dll</HintPath>
|
||||
<Private>false</Private>
|
||||
</Reference>
|
||||
<Reference Include="VSSurvivalMod">
|
||||
<HintPath>$(VINTAGE_STORY)/Mods/VSSurvivalMod.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="VSEssentials">
|
||||
<HintPath>$(VINTAGE_STORY)/Mods/VSEssentials.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="VSCreativeMod">
|
||||
<HintPath>$(VINTAGE_STORY)/Mods/VSCreativeMod.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json">
|
||||
<HintPath>$(VINTAGE_STORY)/Lib/Newtonsoft.Json.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="0Harmony">
|
||||
<HintPath>$(VINTAGE_STORY)/Lib/0Harmony.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="VintagestoryLib">
|
||||
<HintPath>$(VINTAGE_STORY)/VintagestoryLib.dll</HintPath>
|
||||
<Private>false</Private>
|
||||
</Reference>
|
||||
<Reference Include="protobuf-net">
|
||||
<HintPath>$(VINTAGE_STORY)/Lib/protobuf-net.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="cairo-sharp">
|
||||
<HintPath>$(VINTAGE_STORY)/Lib/cairo-sharp.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
<Reference Include="Microsoft.Data.Sqlite">
|
||||
<HintPath>$(VINTAGE_STORY)/Lib/Microsoft.Data.Sqlite.dll</HintPath>
|
||||
<Private>False</Private>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<Content Include="assets\**">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<None Remove="assets\automate\blocktypes\boiler.json" />
|
||||
<None Remove="assets\automate\blocktypes\water_chamber.json" />
|
||||
<None Remove="assets\automate\textures\block\copper.png" />
|
||||
<None Remove="assets\automate\textures\block\leaded.png" />
|
||||
<Content Include="modinfo.json">
|
||||
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
|
||||
</Project>
|
||||
95
Automate/AutomateModSystem.cs
Normal file
@@ -0,0 +1,95 @@
|
||||
using Vintagestory.API.Client;
|
||||
using Vintagestory.API.Common;
|
||||
using Vintagestory.API.Config;
|
||||
using Vintagestory.API.Server;
|
||||
|
||||
using Automate.BlockEntities;
|
||||
using Automate.Blocks;
|
||||
using Vintagestory.GameContent.Mechanics;
|
||||
using Automate.AutomateMP.Network;
|
||||
using Automate.src.BlockEntities;
|
||||
|
||||
namespace Automate
|
||||
{
|
||||
public class AutomateModSystem : ModSystem
|
||||
{
|
||||
private ICoreClientAPI capi;
|
||||
private ICoreServerAPI sapi;
|
||||
private IClientNetworkChannel clientNwChannel;
|
||||
private IServerNetworkChannel serverNwChannel;
|
||||
|
||||
public override bool ShouldLoad(EnumAppSide forSide)
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
// Called on server and client
|
||||
// Useful for registering block/entity classes on both sides
|
||||
public override void Start(ICoreAPI api)
|
||||
{
|
||||
// Starting the Mod System Core
|
||||
base.Start(api);
|
||||
|
||||
// Registering all blocks, items, entities, etc.
|
||||
Mod.Logger.Event(" Initialisation of " + api.Side + " side...");
|
||||
|
||||
api.RegisterBlockClass(AutomateRefs.MODID + ".boiler", typeof(BlockBoiler));
|
||||
api.RegisterBlockClass(AutomateRefs.MODID + ".waterchamber", typeof(BlockWaterChamber));
|
||||
api.RegisterBlockEntityClass(AutomateRefs.MODID + ".bewaterchamber", typeof(BEWaterChamber));
|
||||
api.RegisterBlockEntityClass(AutomateRefs.MODID + ".beboiler", typeof(BEBoiler));
|
||||
|
||||
Mod.Logger.Event(" Boiler, Water Chamber and Piston registered !");
|
||||
|
||||
if (api.Side == EnumAppSide.Client)
|
||||
{
|
||||
capi = (ICoreClientAPI) api;
|
||||
clientNwChannel =
|
||||
capi.Network.RegisterChannel(Mod.Info.ModID + "mechnetwork")
|
||||
.RegisterMessageType(typeof(AutomateNetworkMessage))
|
||||
.SetMessageHandler<AutomateNetworkMessage>(OnAutomateWelcome);
|
||||
}
|
||||
else
|
||||
{
|
||||
sapi = (ICoreServerAPI) api;
|
||||
//api.World.RegisterGameTickListener(OnServerGameTick, 20); For Server Tick, to update all networks
|
||||
serverNwChannel =
|
||||
sapi.Network.RegisterChannel(Mod.Info.ModID + "mechnetwork")
|
||||
.RegisterMessageType(typeof(AutomateNetworkMessage));
|
||||
|
||||
//.RegisterMessageType(typeof(MechNetworkPacket))
|
||||
api.ChatCommands.Create(Mod.Info.ModID)
|
||||
.WithDescription("A welcoming message for " + Mod.Info.ModID)
|
||||
.RequiresPrivilege(Privilege.controlserver)
|
||||
.HandleWith(new OnCommandDelegate(OnAutomateCommand));
|
||||
}
|
||||
}
|
||||
|
||||
public override void StartServerSide(ICoreServerAPI api)
|
||||
{
|
||||
Mod.Logger.Notification("Hello from template mod server side: " + Lang.Get("automate:hello"));
|
||||
}
|
||||
|
||||
public override void StartClientSide(ICoreClientAPI api)
|
||||
{
|
||||
Mod.Logger.Notification("Hello from template mod client side: " + Lang.Get("automate:hello"));
|
||||
}
|
||||
|
||||
// The command with its data. Here a simple message like in the tuto on github!
|
||||
private TextCommandResult OnAutomateCommand(TextCommandCallingArgs args){
|
||||
serverNwChannel.BroadcastPacket(
|
||||
new AutomateNetworkMessage()
|
||||
{
|
||||
message = "Welcome to the Automate mod, start by checking the handbook with the H key!"
|
||||
}
|
||||
);
|
||||
return TextCommandResult.Success();
|
||||
}
|
||||
|
||||
// Function executed on client upon receiving the packet
|
||||
private void OnAutomateWelcome(AutomateNetworkMessage networkMessage)
|
||||
{
|
||||
capi.ShowChatMessage(networkMessage.message);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
15
Automate/AutomateRefs.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Automate
|
||||
{
|
||||
public class AutomateRefs
|
||||
{
|
||||
public const String MODID = "automate";
|
||||
public const String MODID_COLONS = MODID + ":";
|
||||
public const String GAME_COLONS = "game:";
|
||||
}
|
||||
}
|
||||
16
Automate/Properties/launchSettings.json
Normal file
@@ -0,0 +1,16 @@
|
||||
{
|
||||
"profiles": {
|
||||
"Client": {
|
||||
"commandName": "Executable",
|
||||
"executablePath": "dotnet",
|
||||
"commandLineArgs": "\"$(VINTAGE_STORY)/Vintagestory.dll\" --tracelog --addModPath \"$(ProjectDir)/bin/$(Configuration)/Mods\"",
|
||||
"workingDirectory": "$(VINTAGE_STORY)"
|
||||
},
|
||||
"Server": {
|
||||
"commandName": "Executable",
|
||||
"executablePath": "dotnet",
|
||||
"commandLineArgs": "\"$(VINTAGE_STORY)/VintagestoryServer.dll\" --tracelog --addModPath \"$(ProjectDir)/bin/$(Configuration)/Mods\"",
|
||||
"workingDirectory": "$(VINTAGE_STORY)"
|
||||
}
|
||||
}
|
||||
}
|
||||
89
Automate/README.md
Normal file
@@ -0,0 +1,89 @@
|
||||
Créer un équivalent au mod **Create** (de Minecraft) dans **Vintage Story** est un projet ambitieux, mais passionnant ! Le mod Create repose sur des mécaniques de **mouvement de blocs, automation, engrenages, énergie cinétique, et machines complexes**. Voici une **liste structurée** des compétences C# et concepts de l'API Vintage Story à maîtriser pour y parvenir :
|
||||
|
||||
---
|
||||
|
||||
## **1. Concepts Fondamentaux à Revoir (C#)**
|
||||
- **Programmation orientée objet (POO)**
|
||||
- Classes, héritage, interfaces (`IMod`, `ModSystem`).
|
||||
- Méthodes virtuelles (`Override` dans `ModSystem`).
|
||||
- **Gestion des événements**
|
||||
- Comprendre `events`, `delegates` (ex: `OnPlayerInteract`, `OnBlockPlaced`).
|
||||
- **Collections et LINQ**
|
||||
- Utilisation de `List<T>`, `Dictionary<K,V>` pour gérer des données dynamiques (ex: liste de blocs connectés).
|
||||
- **Threading et tâches asynchrones**
|
||||
- Pour éviter de bloquer le jeu avec des calculs lourds (ex: `Task.Run` pour des simulations de physique).
|
||||
|
||||
---
|
||||
|
||||
## **2. API Vintage Story Spécifique**
|
||||
### **Pour les mécaniques de type "Create"**
|
||||
| **Fonctionnalité** | **API/Classes à utiliser** | **Exemple d'application** |
|
||||
|----------------------------------|----------------------------------------------------|---------------------------|
|
||||
| **Mouvement de blocs** | `BlockEntity`, `BlockEntityBehavior` | Déplacer un bloc via un piston. |
|
||||
| **Interaction joueur** | `ICorePlayerAPI`, `BlockSelection` | Détecter un clic sur une manivelle. |
|
||||
| **Rendu custom (GUI/animations)**| `IRenderAPI`, `ShapeRenderer`, `GuiDialog` | Afficher une interface de contrôle. |
|
||||
| **Physique et collisions** | `Cuboidf`, `BlockCollisionTester` | Vérifier si un bloc peut être poussé. |
|
||||
| **Réseau (sync client/serveur)** | `IServerNetworkAPI`, `IClientNetworkAPI` | Synchroniser l'état des engrenages. |
|
||||
| **Sons et particules** | `ISoundAPI`, `ISimpleParticleAPI` | Jouer un bruit de mécanique. |
|
||||
|
||||
---
|
||||
|
||||
## **3. Composantes Clés à Implémenter**
|
||||
### **(Inspirées de Create)**
|
||||
1. **Système d’énergie cinétique**
|
||||
- Créer une classe `KineticNetwork` pour gérer la transmission de puissance entre engrenages.
|
||||
- Utiliser `ModSystem` pour mettre à jour les réseaux chaque tick (`OnServerGameTick`).
|
||||
|
||||
2. **Blocs interactifs**
|
||||
- **Manivelles**, **poulies**, **engrenages** :
|
||||
- Hériter de `BlockEntity` pour stocker leur état (rotation, puissance transmise).
|
||||
- Exemple de code pour une manivelle :
|
||||
```csharp
|
||||
public class BlockEntityCrank : BlockEntity
|
||||
{
|
||||
public float RotationAngle { get; set; }
|
||||
public override void OnTick(float dt) => RotationAngle += dt * 10f;
|
||||
}
|
||||
```
|
||||
|
||||
3. **Mouvement de blocs (pistons, convoyeurs)**
|
||||
- Utiliser `BlockEntityBehavior` pour détecter les blocs adjacents.
|
||||
- Pour déplacer un bloc :
|
||||
```csharp
|
||||
api.World.BlockAccessor.SetBlock(0, oldPos); // Supprime l'ancien bloc
|
||||
api.World.BlockAccessor.SetBlock(blockId, newPos); // Place le bloc à la nouvelle position
|
||||
```
|
||||
|
||||
4. **Machines et automation**
|
||||
- **Recettes mécaniques** : Utiliser `IModRegistry` pour ajouter des recettes custom.
|
||||
- **Stockage d’items/fluides** : Inspirer des mods comme `From Golden Combs` pour gérer des inventaires dynamiques.
|
||||
|
||||
---
|
||||
|
||||
## **4. Outils et Bonnes Pratiques**
|
||||
- **Débogage** :
|
||||
- Utiliser `Mod.Logger.Notification()` pour tracer des infos.
|
||||
- **Attacher un débogueur** (VSCode/Rider) au processus du jeu.
|
||||
- **Optimisation** :
|
||||
- Éviter les calculs lourds dans `OnTick()` → Utiliser des timers ou des updates espacés.
|
||||
- **Compatibilité** :
|
||||
- Vérifier les dépendances (ex: `"requiredmods": ["game"]` dans `modinfo.json`).
|
||||
|
||||
---
|
||||
|
||||
## **5. Ressources pour Approfondir**
|
||||
- **Exemples de mods complexes** :
|
||||
- [TemporalGearManagement](https://github.com/anegostudios/VintageStory-TemporalGearManagement) (gestion d’états persistants).
|
||||
- [Primitive Survival](https://github.com/copygirl/PrimitiveSurvival) (machines et automation).
|
||||
- **Documentation API** :
|
||||
- [API Vintage Story](https://apidocs.vintagestory.at/api/Vintagestory.API.Common.ICoreAPI.html) (pour explorer les méthodes disponibles).
|
||||
|
||||
---
|
||||
|
||||
## **6. Prochaines Étapes (Roadmap Suggérée)**
|
||||
1. **Commencer petit** : Un seul engrenage qui transmet sa rotation à un bloc adjacent.
|
||||
2. **Ajouter des GUI** : Une interface pour afficher la puissance transmise.
|
||||
3. **Gérer la physique** : Empêcher les blocs de se chevaucher.
|
||||
4. **Étendre le système** : Ajouter des convoyeurs, des bras mécaniques, etc.
|
||||
|
||||
Si tu veux des exemples plus précis sur l’une de ces étapes, fais-le-moi savoir ! 🛠️
|
||||
24
Automate/assets/automate/blocktypes/boiler.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"code": "autoboiler",
|
||||
"class": "automate.boiler",
|
||||
"entityClass": "automate.beboiler",
|
||||
"entityBehaviors": [
|
||||
{ "name": "TemperatureSensitive" },
|
||||
],
|
||||
"behaviors": [
|
||||
{ "name": "Lockable" },
|
||||
{ "name": "Container" },
|
||||
{ "name": "Ignitable" },
|
||||
{ "name": "HeatSource" },
|
||||
{ "name": "HorizontalOrientable" }
|
||||
],
|
||||
"creativeinventory": {
|
||||
"general": [ "*" ],
|
||||
"mechanics": [ "*" ],
|
||||
"automate": [ "*" ]
|
||||
},
|
||||
"drawtype": "Cube",
|
||||
"texture": {
|
||||
"base": "block/rock/bauxite1"
|
||||
}
|
||||
}
|
||||
41
Automate/assets/automate/blocktypes/rail.json
Normal file
@@ -0,0 +1,41 @@
|
||||
{
|
||||
"code": "rail",
|
||||
"creativeinventory": { "general": [ "*" ], "mechanics": [ "*" ], "automate": [ "*" ] },
|
||||
"blockmaterial": "Metal",
|
||||
"behaviors": [
|
||||
{"name": "Unstable"},
|
||||
{"name": "HorizontalOrientable"}
|
||||
],
|
||||
"variantgroups": [
|
||||
{ "code": "rock", "loadFromProperties": "block/rockwithdeposit" },
|
||||
],
|
||||
"textures": {
|
||||
"stainlesssteel": { "base": "block/stainlesssteel" },
|
||||
"steel": { "base": "block/steel" },
|
||||
"support": { "base": "block/rock/{rock}1" }
|
||||
},
|
||||
"shape": {
|
||||
"base": "block/rail"
|
||||
},
|
||||
"requiredminingtier": 2,
|
||||
"resistance": 0.5,
|
||||
"lightAbsorption": 0,
|
||||
"replaceable": 5001,
|
||||
"maxStackSize": 32,
|
||||
"selectionbox": {
|
||||
"x1": 0, "y1": 0, "z1": 0, "x2": 1, "y2": 0.2, "z2": 1,
|
||||
},
|
||||
"collisionbox": {
|
||||
"x1": 0, "y1": 0, "z1": 0, "x2": 1, "y2": 0.15, "z2": 1,
|
||||
},
|
||||
"sidesolid": {
|
||||
"all": false
|
||||
},
|
||||
"sideopaque": {
|
||||
"all": false
|
||||
},
|
||||
"sounds": {
|
||||
"place": "game:block/anvil",
|
||||
"walk": "game:walk/stone"
|
||||
}
|
||||
}
|
||||
35
Automate/assets/automate/blocktypes/water_chamber.json
Normal file
@@ -0,0 +1,35 @@
|
||||
{
|
||||
"code": "waterchamber",
|
||||
"class": "automate.waterchamber",
|
||||
"entityClass": "automate.bewaterchamber",
|
||||
"attributes": {
|
||||
"canDrinkFrom": false,
|
||||
"isTopOpened": false,
|
||||
"allowHeldLiquidTransfer": false,
|
||||
"capacityLitres": 50
|
||||
},
|
||||
"creativeinventory": {
|
||||
"general": [ "*" ],
|
||||
"mechanics": [ "*" ],
|
||||
"automate": [ "*" ]
|
||||
},
|
||||
"textures": {
|
||||
"copper": { "base": "block/copper" },
|
||||
"glass": { "base": "block/leaded" }
|
||||
},
|
||||
"shape": {
|
||||
"base": "block/water_chamber"
|
||||
},
|
||||
"sideao": {
|
||||
"all": false
|
||||
},
|
||||
"sidesolid": {
|
||||
"all": false
|
||||
},
|
||||
"emitsideao": {
|
||||
"all": false
|
||||
},
|
||||
"sideopaque": {
|
||||
"all": false
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"pageCode": "automate:automate",
|
||||
"title": "automate:automate-title",
|
||||
"text": "automate:automate-text"
|
||||
}
|
||||
91
Automate/assets/automate/itemtypes/railbar.json
Normal file
@@ -0,0 +1,91 @@
|
||||
{
|
||||
"code": "railbar",
|
||||
"creativeinventory": {
|
||||
"general": [ "*" ],
|
||||
"automate": [ "*" ]
|
||||
},
|
||||
"attributes": {
|
||||
"onTongTransform": {
|
||||
"translation": { "x": 0.2, "y": -0.5, "z": 0.225 },
|
||||
"rotation": { "x": 0, "y": 3, "z": -11 },
|
||||
"origin": { "x": 0, "y": 0, "z": 0 },
|
||||
"scale": 1.2
|
||||
}
|
||||
},
|
||||
"maxStackSize": 32,
|
||||
"shape": {
|
||||
"base": "item/railbar"
|
||||
},
|
||||
"guiTransform": {
|
||||
"translation": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"rotation": {
|
||||
"x": -89,
|
||||
"y": 41,
|
||||
"z": 33
|
||||
},
|
||||
"origin": {
|
||||
"x": 0.48,
|
||||
"y": 0,
|
||||
"z": 0.38
|
||||
},
|
||||
"scale": 1.78
|
||||
},
|
||||
"fpHandTransform": {
|
||||
"translation": {
|
||||
"x": -0.3,
|
||||
"y": -0.5,
|
||||
"z": 0.3
|
||||
},
|
||||
"rotation": {
|
||||
"x": -29,
|
||||
"y": 1,
|
||||
"z": 88
|
||||
},
|
||||
"origin": {
|
||||
"x": 0.2,
|
||||
"y": 0.5,
|
||||
"z": 0.5
|
||||
},
|
||||
"scale": 2.5
|
||||
},
|
||||
"groundTransform": {
|
||||
"translation": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"rotation": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"origin": {
|
||||
"x": 0.5,
|
||||
"y": 0,
|
||||
"z": 0.5
|
||||
},
|
||||
"scale": 3.4
|
||||
},
|
||||
"tpHandTransform": {
|
||||
"translation": {
|
||||
"x": -0.45,
|
||||
"y": 0.03,
|
||||
"z": -0.66
|
||||
},
|
||||
"rotation": {
|
||||
"x": 90,
|
||||
"y": 0,
|
||||
"z": 0
|
||||
},
|
||||
"origin": {
|
||||
"x": 0.5,
|
||||
"y": 0,
|
||||
"z": 0.5
|
||||
},
|
||||
"scale": 0.8
|
||||
}
|
||||
}
|
||||
37
Automate/assets/automate/lang/en.json
Normal file
@@ -0,0 +1,37 @@
|
||||
{
|
||||
// Creative Tab
|
||||
"game:tabname-automate": "Automate",
|
||||
// Handbook:
|
||||
"automate:automate-title": "Automate: Basics",
|
||||
"automate:automate-text": "Work In Progress, but progress there is not!",
|
||||
|
||||
"block-rail-andesite": "Andesite Rail",
|
||||
"block-rail-chalk": "Chalk Rail",
|
||||
"block-rail-chert": "Chert Rail",
|
||||
"block-rail-conglomerate": "Conglomerate Rail",
|
||||
"block-rail-limestone": "Limestone Rail",
|
||||
"block-rail-claystone": "Claystone Rail",
|
||||
"block-rail-granite": "Granite Rail",
|
||||
"block-rail-sandstone": "Sandstone Rail",
|
||||
"block-rail-shale": "Shale Rail",
|
||||
"block-rail-basalt": "Basalt Rail",
|
||||
"block-rail-peridotite": "Peridotite Rail",
|
||||
"block-rail-phyllite": "Phyllite Rail",
|
||||
"block-rail-slate": "Slate Rail",
|
||||
"block-rail-bauxite": "Bauxite Rail",
|
||||
"block-rail-suevite": "Suevite Rail",
|
||||
"block-rail-whitemarble": "Whitemarble Rail",
|
||||
"block-rail-greenmarble": "Greenmarble Rail",
|
||||
"block-rail-redmarble": "Redmarble Rail",
|
||||
"block-rail-kimberlite": "Kimberlite Rail",
|
||||
|
||||
"blockdesc-rail-*": "A rail that can be connected to other rails to form a circuit V2",
|
||||
|
||||
"block-autoboiler": "Boiler",
|
||||
"block-waterchamber": "Water Chamber",
|
||||
"Steam Engine Boiler": "Steam Engine Boiler",
|
||||
"Temperature: {0}°C": "Temperature: {0}°C",
|
||||
|
||||
"item-railbar": "Rail Bar",
|
||||
"itemdesc-railbar": "The fondation of every rail"
|
||||
}
|
||||
25
Automate/assets/automate/recipes/grid/railrecipe.json
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"ingredientPattern": "BSB",
|
||||
"width": 3,
|
||||
"height": 1,
|
||||
"ingredients": {
|
||||
"B": {
|
||||
"type": "item",
|
||||
"code": "railbar"
|
||||
},
|
||||
"S": {
|
||||
"type": "item",
|
||||
"code": "game:stone-*",
|
||||
"name": "rock",
|
||||
"allowedVariants": ["andesite", "chalk", "chert", "conglomerate", "limestone",
|
||||
"claystone", "granite", "sandstone", "shale", "basalt", "peridotite", "phyllite",
|
||||
"slate", "bauxite", "suevite", "whitemarble", "greenmarble", "redmarble", "kimberlite"],
|
||||
"quantity": 6
|
||||
}
|
||||
},
|
||||
"output": {
|
||||
"type": "block",
|
||||
"code": "rail-{rock}",
|
||||
"quantity" : 2
|
||||
}
|
||||
}
|
||||
25
Automate/assets/automate/recipes/grid/railrecipe.json.bak
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
"ingredientPattern": "B,S,B",
|
||||
"width": 3,
|
||||
"height": 1,
|
||||
"ingredients": {
|
||||
"B": {
|
||||
"type": "item",
|
||||
"code": "railbar",
|
||||
},
|
||||
"S": {
|
||||
"type": "item",
|
||||
"code": "stone-*",
|
||||
"name": "rock",
|
||||
"allowedVariants": ["andesite", "chalk", "chert", "conglomerate", "limestone",
|
||||
"claystone", "granite", "sandstone", "shale", "basalt", "peridotite", "phyllite",
|
||||
"slate", "bauxite", "suevite", "whitemarble", "greenmarble", "redmarble", "kimberlite"],
|
||||
"quantity": 6
|
||||
}
|
||||
},
|
||||
"output": {
|
||||
"type": "block",
|
||||
"code": "rail-{rock}",
|
||||
"quantity" : 2
|
||||
}
|
||||
}
|
||||
24
Automate/assets/automate/recipes/smithing/rail_bar.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"ingredient": {
|
||||
"type": "item",
|
||||
"code": "game:ingot-steel",
|
||||
},
|
||||
|
||||
"pattern": [
|
||||
[
|
||||
"#_#_#_#",
|
||||
"#_#_#_#",
|
||||
"#_#_#_#",
|
||||
"_______",
|
||||
"#_#_#_#",
|
||||
"#_#_#_#",
|
||||
"#_#_#_#"
|
||||
]
|
||||
],
|
||||
|
||||
"output": {
|
||||
"type": "item",
|
||||
"code": "railbar",
|
||||
"quantity": 8
|
||||
}
|
||||
}
|
||||
116
Automate/assets/automate/shapes/block/rail.json
Normal file
@@ -0,0 +1,116 @@
|
||||
{
|
||||
"editor": {
|
||||
"allAngles": false,
|
||||
"entityTextureMode": false
|
||||
},
|
||||
"textureWidth": 16,
|
||||
"textureHeight": 16,
|
||||
"textureSizes": {
|
||||
"stainlesssteel": [16,16],
|
||||
"steel": [16,16]
|
||||
},
|
||||
"textures": {
|
||||
"stainlesssteel": "block/stainlesssteel",
|
||||
"steel": "block/steel",
|
||||
"support": "block/rock/{rock}1"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "LeftRail",
|
||||
"from": [ 2.0, 0.0, 0.0 ],
|
||||
"to": [ 4.0, 2.0, 16.0 ],
|
||||
"rotationOrigin": [ 2.0, 0.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ], "autoUv": false },
|
||||
"east": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ], "autoUv": false },
|
||||
"south": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"west": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"up": { "texture": "#stainlesssteel", "uv": [ 3.0, 0.0, 5.0, 16.0 ], "windMode": [-1,-1,-1,-1] },
|
||||
"down": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 16.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "RightRail",
|
||||
"from": [ 12.0, 0.0, 0.0 ],
|
||||
"to": [ 14.0, 2.0, 16.0 ],
|
||||
"rotationOrigin": [ 12.0, 0.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"east": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"south": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"west": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"up": { "texture": "#stainlesssteel", "uv": [ 3.0, 0.0, 5.0, 16.0 ], "windMode": [-1,-1,-1,-1] },
|
||||
"down": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 16.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support",
|
||||
"from": [ 0.0, 0.0, 1.0 ],
|
||||
"to": [ 16.0, 1.0, 3.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 1.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support2",
|
||||
"from": [ 0.0, 0.0, 4.0 ],
|
||||
"to": [ 16.0, 1.0, 6.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 4.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support3",
|
||||
"from": [ 0.0, 0.0, 7.0 ],
|
||||
"to": [ 16.0, 1.0, 9.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 7.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support4",
|
||||
"from": [ 0.0, 0.0, 10.0 ],
|
||||
"to": [ 16.0, 1.0, 12.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 10.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support5",
|
||||
"from": [ 0.0, 0.0, 13.0 ],
|
||||
"to": [ 16.0, 1.0, 15.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 13.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
}
|
||||
]}
|
||||
115
Automate/assets/automate/shapes/block/rail.json.bak
Normal file
@@ -0,0 +1,115 @@
|
||||
{
|
||||
"editor": {
|
||||
"allAngles": false,
|
||||
"entityTextureMode": false
|
||||
},
|
||||
"textureWidth": 16,
|
||||
"textureHeight": 16,
|
||||
"textureSizes": {
|
||||
"stainlesssteel": [16,16],
|
||||
"steel": [16,16]
|
||||
},
|
||||
"textures": {
|
||||
"stainlesssteel": "block/stainlesssteel",
|
||||
"steel": "block/steel"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "LeftRail",
|
||||
"from": [ 2.0, 0.0, 0.0 ],
|
||||
"to": [ 4.0, 2.0, 16.0 ],
|
||||
"rotationOrigin": [ 2.0, 0.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ], "autoUv": false },
|
||||
"east": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ], "autoUv": false },
|
||||
"south": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"west": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"up": { "texture": "#stainlesssteel", "uv": [ 3.0, 0.0, 5.0, 16.0 ], "windMode": [-1,-1,-1,-1] },
|
||||
"down": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 16.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "RightRail",
|
||||
"from": [ 12.0, 0.0, 0.0 ],
|
||||
"to": [ 14.0, 2.0, 16.0 ],
|
||||
"rotationOrigin": [ 12.0, 0.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"east": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"south": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"west": { "texture": "#steel", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"up": { "texture": "#stainlesssteel", "uv": [ 3.0, 0.0, 5.0, 16.0 ], "windMode": [-1,-1,-1,-1] },
|
||||
"down": { "texture": "#steel", "uv": [ 0.0, 0.0, 2.0, 16.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support",
|
||||
"from": [ 0.0, 0.0, 1.0 ],
|
||||
"to": [ 16.0, 1.0, 3.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 1.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support2",
|
||||
"from": [ 0.0, 0.0, 4.0 ],
|
||||
"to": [ 16.0, 1.0, 6.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 4.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support3",
|
||||
"from": [ 0.0, 0.0, 7.0 ],
|
||||
"to": [ 16.0, 1.0, 9.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 7.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support4",
|
||||
"from": [ 0.0, 0.0, 10.0 ],
|
||||
"to": [ 16.0, 1.0, 12.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 10.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Support5",
|
||||
"from": [ 0.0, 0.0, 13.0 ],
|
||||
"to": [ 16.0, 1.0, 15.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 13.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"south": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#support", "uv": [ 0.0, 0.0, 2.0, 1.0 ] },
|
||||
"up": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] },
|
||||
"down": { "texture": "#support", "uv": [ 0.0, 0.0, 16.0, 2.0 ] }
|
||||
}
|
||||
}
|
||||
]}
|
||||
164
Automate/assets/automate/shapes/block/water_chamber.json
Normal file
@@ -0,0 +1,164 @@
|
||||
{
|
||||
"editor": {
|
||||
"allAngles": false,
|
||||
"entityTextureMode": false
|
||||
},
|
||||
"textureWidth": 16,
|
||||
"textureHeight": 16,
|
||||
"textureSizes": {
|
||||
"leaded": [16,16],
|
||||
"copper": [16,16]
|
||||
},
|
||||
"textures": {
|
||||
"copper": "block/copper",
|
||||
"leaded": "block/leaded"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "Bottom",
|
||||
"from": [ 0.0, 0.0, 0.0 ],
|
||||
"to": [ 16.0, 1.0, 16.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ], "autoUv": false },
|
||||
"south": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"up": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 16.0 ] },
|
||||
"down": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 16.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Top",
|
||||
"from": [ 0.0, 15.0, 0.0 ],
|
||||
"to": [ 16.0, 16.0, 16.0 ],
|
||||
"rotationOrigin": [ 0.0, 15.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"south": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"up": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 16.0 ] },
|
||||
"down": { "texture": "#copper", "uv": [ 0.0, 0.0, 16.0, 16.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Pillar1",
|
||||
"from": [ 0.0, 1.0, 0.0 ],
|
||||
"to": [ 2.0, 15.0, 2.0 ],
|
||||
"rotationOrigin": [ 0.0, 1.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"east": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"south": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"west": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"up": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"down": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] }
|
||||
},
|
||||
"children": [
|
||||
{
|
||||
"name": "Pillar2",
|
||||
"from": [ 14.0, 0.0, 0.0 ],
|
||||
"to": [ 16.0, 14.0, 2.0 ],
|
||||
"rotationOrigin": [ 14.0, 0.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"east": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"south": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"west": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"up": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"down": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Pillar3",
|
||||
"from": [ 0.0, 0.0, 14.0 ],
|
||||
"to": [ 2.0, 14.0, 16.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 14.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"east": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"south": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"west": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"up": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"down": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Pillar4",
|
||||
"from": [ 14.0, 0.0, 14.0 ],
|
||||
"to": [ 16.0, 14.0, 16.0 ],
|
||||
"rotationOrigin": [ 14.0, 0.0, 14.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"east": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"south": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"west": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 14.0 ] },
|
||||
"up": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] },
|
||||
"down": { "texture": "#copper", "uv": [ 0.0, 0.0, 2.0, 2.0 ] }
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Glass1",
|
||||
"from": [ 1.0, 1.0, 2.0 ],
|
||||
"to": [ 2.0, 15.0, 14.0 ],
|
||||
"renderPass": 3,
|
||||
"rotationOrigin": [ 1.0, 1.0, 2.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#leaded", "uv": [ 1.0, 7.5, 15.0, 8.5 ], "rotation": 90 },
|
||||
"east": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"south": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"west": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"up": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 12.0 ] },
|
||||
"down": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 12.0 ] }
|
||||
},
|
||||
"children": [
|
||||
{
|
||||
"name": "Glass2",
|
||||
"from": [ 1.0, 0.0, -1.0 ],
|
||||
"to": [ 13.0, 14.0, 0.0 ],
|
||||
"renderPass": 3,
|
||||
"rotationOrigin": [ 1.0, 0.0, -1.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"east": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"south": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"west": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"up": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 1.0 ] },
|
||||
"down": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 1.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Glass3",
|
||||
"from": [ 13.0, 0.0, 0.0 ],
|
||||
"to": [ 14.0, 14.0, 12.0 ],
|
||||
"renderPass": 3,
|
||||
"rotationOrigin": [ 13.0, 0.0, 0.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"east": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"south": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"west": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"up": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 12.0 ] },
|
||||
"down": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 12.0 ] }
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "Glass4",
|
||||
"from": [ 1.0, 0.0, 12.0 ],
|
||||
"to": [ 13.0, 14.0, 13.0 ],
|
||||
"renderPass": 3,
|
||||
"rotationOrigin": [ 1.0, 0.0, 12.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"east": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"south": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 14.0 ] },
|
||||
"west": { "texture": "#leaded", "uv": [ 0.0, 0.0, 1.0, 14.0 ] },
|
||||
"up": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 1.0 ] },
|
||||
"down": { "texture": "#leaded", "uv": [ 0.0, 0.0, 12.0, 1.0 ] }
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]}
|
||||
27
Automate/assets/automate/shapes/item/railbar.json
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
"editor": {
|
||||
"allAngles": false,
|
||||
"entityTextureMode": false
|
||||
},
|
||||
"textureWidth": 16,
|
||||
"textureHeight": 16,
|
||||
"textureSizes": {
|
||||
},
|
||||
"textures": {
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"name": "Bar",
|
||||
"from": [ 0.0, 0.0, 7.0 ],
|
||||
"to": [ 16.0, 1.0, 8.0 ],
|
||||
"rotationOrigin": [ 0.0, 0.0, 7.0 ],
|
||||
"faces": {
|
||||
"north": { "texture": "#null", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"east": { "texture": "#null", "uv": [ 0.0, 0.0, 1.0, 1.0 ] },
|
||||
"south": { "texture": "#null", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"west": { "texture": "#null", "uv": [ 0.0, 0.0, 1.0, 1.0 ] },
|
||||
"up": { "texture": "#null", "uv": [ 0.0, 0.0, 16.0, 1.0 ] },
|
||||
"down": { "texture": "#null", "uv": [ 0.0, 0.0, 16.0, 1.0 ] }
|
||||
}
|
||||
}
|
||||
]}
|
||||
BIN
Automate/assets/automate/textures/block/copper.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/leaded.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
Automate/assets/automate/textures/block/rock/andesite1.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
Automate/assets/automate/textures/block/rock/andesite2.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/andesite3.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
Automate/assets/automate/textures/block/rock/andesite4.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/basalt1.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/basalt2.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/basalt3.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/basalt4.png
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/bauxite1.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/bauxite2.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/bauxite3.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/bauxite4.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/chalk1.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
Automate/assets/automate/textures/block/rock/chalk2.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
Automate/assets/automate/textures/block/rock/chalk3.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/chalk4.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/chert1.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/chert2.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/chert3.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/chert4.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/claystone1.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/claystone2.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/claystone3.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/claystone4.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/conglomerate1.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/conglomerate2.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/conglomerate3.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/conglomerate4.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/granite1.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/granite2.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/granite3.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/granite4.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/greenmarble1.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/greenmarble2.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
Automate/assets/automate/textures/block/rock/greenmarble3.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/greenmarble4.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/halite1.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/halite2.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/halite3.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/halite4.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/kimberlite1.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/limestone1.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/limestone2.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
Automate/assets/automate/textures/block/rock/limestone3.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/limestone4.png
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
BIN
Automate/assets/automate/textures/block/rock/meteorite-iron1.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/meteorite-iron2.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/meteorite-iron3.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/meteorite-iron4.png
Normal file
|
After Width: | Height: | Size: 2.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/obsidian1.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/peridotite1.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/peridotite2.png
Normal file
|
After Width: | Height: | Size: 2.4 KiB |
BIN
Automate/assets/automate/textures/block/rock/peridotite3.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/peridotite4.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/phyllite1.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/phyllite2.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/phyllite3.png
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
Automate/assets/automate/textures/block/rock/phyllite4.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/redmarble1.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/redmarble2.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
Automate/assets/automate/textures/block/rock/redmarble3.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/redmarble4.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/sandstone1.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/sandstone2.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
Automate/assets/automate/textures/block/rock/sandstone3.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/sandstone4.png
Normal file
|
After Width: | Height: | Size: 2.8 KiB |
BIN
Automate/assets/automate/textures/block/rock/scoria1.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/scoria2.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/scoria3.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/scoria4.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/shale1.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/shale2.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/shale3.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/shale4.png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
Automate/assets/automate/textures/block/rock/slate1.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/slate2.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/slate3.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
Automate/assets/automate/textures/block/rock/slate4.png
Normal file
|
After Width: | Height: | Size: 1.2 KiB |