Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
51ee0d8e57 | ||
|
|
9ef66ed71b | ||
|
|
b6e2886476 | ||
|
|
69541f1abf | ||
|
|
09cedad533 | ||
|
|
59b9fec5c2 | ||
|
|
6625df6c3e | ||
|
|
e0ed220c69 | ||
|
|
cba1f9ea3b | ||
|
|
79bfa4eb56 | ||
|
|
12f7125335 |
@@ -0,0 +1,106 @@
|
||||
name: Build & Release
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
version:
|
||||
description: 'Version tag for release (e.g. v1.0.0).'
|
||||
required: true
|
||||
default: ''
|
||||
notes:
|
||||
description: 'URL to notes for release.'
|
||||
required: false
|
||||
default: ''
|
||||
|
||||
jobs:
|
||||
validate:
|
||||
runs-on: windows-2022
|
||||
steps:
|
||||
- name: Validate version format
|
||||
run: |
|
||||
if (-not ("${{ inputs.version }}" -match '^v\d+\.\d+\.\d+[a-zA-Z0-9.-]*$')) {
|
||||
Write-Error "Version '${{ inputs.version }}' doesn't match expected format (e.g. v1.0.0)"
|
||||
exit 1
|
||||
}
|
||||
|
||||
build:
|
||||
runs-on: windows-2022
|
||||
|
||||
strategy:
|
||||
matrix:
|
||||
configuration: [Release]
|
||||
platform: [PS3, Windows64] #[PS3, PSVita, Xbox 360, ORBIS, Windows64]
|
||||
|
||||
steps:
|
||||
- name: Checkout Repository
|
||||
uses: https://github.com/actions/checkout@v4
|
||||
|
||||
- name: Build Cafeberry
|
||||
run: |
|
||||
& "C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe" MinecraftConsoles.sln `
|
||||
/p:Configuration=${{ matrix.configuration }} `
|
||||
/p:Platform=${{ matrix.platform }} `
|
||||
/m
|
||||
|
||||
- name: Zip Build (Consoles)
|
||||
if: matrix.platform != 'Windows64'
|
||||
run: 7z a -r LCE${{ matrix.platform }}.zip ./${{ matrix.platform }}_${{ matrix.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
|
||||
|
||||
- name: Zip Build (Windows64)
|
||||
if: matrix.platform == 'Windows64'
|
||||
run: 7z a -r LCE${{ matrix.platform }}.zip ./x64/${{ matrix.configuration }}/* "-x!*.ipdb" "-x!*.iobj"
|
||||
|
||||
- name: Stage artifacts
|
||||
run: |
|
||||
New-Item -ItemType Directory -Force -Path staging
|
||||
Copy-Item LCE${{ matrix.platform }}.zip staging/
|
||||
|
||||
- name: Stage exe
|
||||
if: matrix.platform == 'Windows64'
|
||||
run: |
|
||||
Copy-Item ./x64/${{ matrix.configuration }}/Minecraft.Client.exe staging/
|
||||
|
||||
- name: Upload artifacts
|
||||
uses: https://github.com/actions/upload-artifact@v3
|
||||
with:
|
||||
name: build-${{ matrix.platform }}
|
||||
path: staging/*
|
||||
|
||||
release:
|
||||
needs: build
|
||||
runs-on: windows-2022
|
||||
steps:
|
||||
- name: Download all build artifacts
|
||||
uses: https://github.com/actions/download-artifact@v3
|
||||
with:
|
||||
path: downloaded
|
||||
|
||||
- name: Fetch release notes
|
||||
id: notes
|
||||
run: |
|
||||
$notesSource = "${{ inputs.notes }}"
|
||||
$fallback = "## Cafeberry`n`n### Whoever made this release forgot to put notes, sorry!"
|
||||
|
||||
if ($notesSource -match '^https?://') {
|
||||
try {
|
||||
$body = (Invoke-WebRequest -Uri $notesSource -UseBasicParsing).Content
|
||||
if ([string]::IsNullOrWhiteSpace($body)) { $body = $fallback }
|
||||
} catch {
|
||||
$body = $fallback
|
||||
}
|
||||
}
|
||||
|
||||
"description<<EOF`n$body`nEOF" | Out-File -Append -Encoding utf8 -NoNewline:$false $env:GITHUB_OUTPUT
|
||||
|
||||
- name: Publish Release
|
||||
uses: akkuman/gitea-release-action@v1
|
||||
with:
|
||||
name: ${{ inputs.version }}
|
||||
server_url: ${{ gitea.server_url }}
|
||||
repository: ${{ gitea.repository }}
|
||||
token: ${{ gitea.token }}
|
||||
tag_name: ${{ inputs.version }}
|
||||
prerelease: false
|
||||
verbose: true
|
||||
files: downloaded/**/*
|
||||
body: ${{ steps.notes.outputs.description }}
|
||||
@@ -9,7 +9,7 @@ const wstring LeaderboardManager::filterNames[eNumFilterModes] =
|
||||
L"Friends", L"MyScore", L"TopRank"
|
||||
};
|
||||
|
||||
#if !defined(_WINDOWS64) && !defined(_DURANGO) && !defined(__ORBIS__) && !defined(__PS3__) && !defined(__PSVITA__) && !defined(_XBOX)
|
||||
#if !defined(_DURANGO) && !defined(_WINDOWS64) && !defined(_XBOX) && !defined(__ORBIS__) // str1k3r - some platforms complain about this, also this wasnt in the leak?
|
||||
LeaderboardManager *LeaderboardManager::m_instance = NULL;
|
||||
#endif
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@ $folderCopies = @(
|
||||
@{ Source = "DurangoMedia"; Dest = "Windows64Media" },
|
||||
@{ Source = "Windows64Media"; Dest = "Windows64Media" },
|
||||
@{ Source = "PSVita\Tutorial"; Dest = "Windows64Media\Tutorial" },
|
||||
@{ Source = "Windows64Media\music"; Dest = "Windows64Media\music" },
|
||||
@{ Source = "music"; Dest = "Windows64Media\music" },
|
||||
@{ Source = "Windows64Media\Sound"; Dest = "Windows64Media\Sound" },
|
||||
@{ Source = "Common\Postbuilds\Contents\Windows64\redist64"; Dest = "redist64" }
|
||||
)
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 139 KiB After Width: | Height: | Size: 154 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 43 KiB After Width: | Height: | Size: 57 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 27 KiB |
@@ -116,7 +116,11 @@ void Options::init()
|
||||
bobView = true;
|
||||
anaglyph3d = false;
|
||||
advancedOpengl = false;
|
||||
#ifdef _WINDOWS64
|
||||
framerateLimit = 0;
|
||||
#else
|
||||
framerateLimit = 2;
|
||||
#endif
|
||||
fancyGraphics = true;
|
||||
ambientOcclusion = true;
|
||||
renderClouds = true;
|
||||
|
||||
@@ -832,7 +832,7 @@ void Tesselator::vertex(float x, float y, float z)
|
||||
pShortData[5] = (((int)(v * 8192.0f))&0xffff);
|
||||
int16_t u2 = ((int16_t*)&_tex2)[0];
|
||||
int16_t v2 = ((int16_t*)&_tex2)[1];
|
||||
#if defined _XBOX_ONE || defined __ORBIS__ || defined _WINDOWS64
|
||||
#if defined _XBOX_ONE || defined __ORBIS__
|
||||
// Optimisation - pack the second UVs into a single short (they could actually go in a byte), which frees up a short to store the x offset for this chunk in the vertex itself.
|
||||
// This means that when rendering chunks, we don't need to update the vertex constants that specify the location for a chunk, when only the x offset has changed.
|
||||
pShortData[6] = ( u2 << 8 ) | v2;
|
||||
|
||||
Binary file not shown.
@@ -48,6 +48,35 @@ bool Boat::makeStepSound()
|
||||
return false;
|
||||
}
|
||||
|
||||
void Boat::checkFallDamage(int result, int onGround, double ya)
|
||||
{
|
||||
if (fallDistance <= 3.0) return;
|
||||
|
||||
if ( !onGround )
|
||||
{
|
||||
int t = level->getTile(x, (floor(y) - 1.0), z);
|
||||
if ((!t || Tile::tiles[t]->material != Material::water) && ya < 0.0 )
|
||||
fallDistance -= ya;
|
||||
|
||||
return;
|
||||
}
|
||||
causeFallDamage(fallDistance);
|
||||
if (!level->isClientSide && !removed)
|
||||
{
|
||||
remove();
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
spawnAtLocation(Tile::wood_Id, 1, 0);
|
||||
}
|
||||
for (int i = 0; i < 2; i++)
|
||||
{
|
||||
spawnAtLocation(Item::stick->id, 1, 0);
|
||||
}
|
||||
}
|
||||
|
||||
fallDistance = 0.0;
|
||||
}
|
||||
|
||||
void Boat::defineSynchedData()
|
||||
{
|
||||
entityData->define(DATA_ID_HURT, 0);
|
||||
|
||||
@@ -36,6 +36,7 @@ public:
|
||||
Boat(Level *level);
|
||||
|
||||
protected:
|
||||
virtual void checkFallDamage(int result, int onGround, double ya);
|
||||
virtual bool makeStepSound();
|
||||
virtual void defineSynchedData();
|
||||
|
||||
|
||||
@@ -147,6 +147,8 @@ void Zombie::aiStep()
|
||||
}
|
||||
}
|
||||
Monster::aiStep();
|
||||
if (isBaby())
|
||||
setSize(0.3f, 0.9f);
|
||||
}
|
||||
|
||||
bool Zombie::hurt(DamageSource *source, float dmg)
|
||||
|
||||
Reference in New Issue
Block a user