Affenpuzzle/Spiel
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
== Das Affenpuzzle (Hexenpuzzle) ==
Legen Sie die Karten in einem Feld 3x3 Karten so, dass alle Teile zusammenpassen.
Auf Karten Klicken, um sie zu drehen. Drag und Drop, um sie zu verschieben.
<html>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js" integrity="sha512-uto9mlQzrs59VwILcLiRYeLKPPbS/bT71da/OEBYEwcdNUk8jYIy+D176RYoop1Da+f9mvkYrmj5MCLZWEtQuA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" integrity="sha512-aOG0c6nPNzGk+5zjwyJaoRUgCdOrfSDhmMID2u4+OIslr0GjpLKo7Xm0Ao3xmpM4T8AmIouRkqwj1nrdVsLKEQ==" crossorigin="anonymous" referrerpolicy="no-referrer" />
<style>
.card {
position:absolute;
width:128px;
height:128px;
border:1px solid black;
background-image:url(https://programmingwiki.de/images/5/50/Admin_Hexenpuzzle.png);
background-size: 310% 310%;
box-shadow:2px 2px 8px rgba(0,0,0,0.2);
flex-shrink:0;
cursor:pointer;
}
.card0 {
left:0;
top:0;
background-position: 0.5% 1%;
}
.card1 {
left:128px;
top:0;
background-position: 49.5% 1%;
}
.card2 {
left:256px;
top:0;
background-position: 98% 1%;
}
.card3 {
background-position: 0.5% 49.5%;
left:0;
top:128px;
}
.card4 {
background-position: 49.5% 49.5%;
left:128px;
top:128px;
}
.card5 {
background-position: 98% 49.5%;
left:256px;
top:128px;
}
.card6 {
background-position: 0.5% 98%;
left:0;
top:256px;
}
.card7 {
background-position: 49.5% 98%;
left:128px;
top:256px;
}
.card8 {
background-position: 98% 98%;
left:256px;
top:256px;
}
.card.dragging {
box-shadow:4px 4px 10px rgba(0,0,0,0.5);
}
.card.rotate0 {
}
.card.rotate90 {
transform:rotate(90deg);
}
.card.rotate180 {
transform:rotate(180deg);
}
.card.rotate270 {
transform:rotate(270deg);
}
.containerCards{
position:relative;
background:#f3f3f3;
border:1px solid black;
width:100%;
height:800px;
display:flex;
flex-wrap:wrap;
}
</style>
<div class="containerCards">
<div class="card card0 rotate0"></div>
<div class="card card1 rotate0"></div>
<div class="card card2 rotate0"></div>
<div class="card card3 rotate0"></div>
<div class="card card4 rotate0"></div>
<div class="card card5 rotate0"></div>
<div class="card card6 rotate0"></div>
<div class="card card7 rotate0"></div>
<div class="card card8 rotate0"></div>
</div>
<script>
$('.card').draggable({ containment: "parent", grid: [ 32, 32 ],
start: function() { $(this).addClass("dragging");},
stop: function() { $(this).removeClass("dragging");},
drag: function(e, ui) {
}
});
$('.card').on('mousedown', function(event) {
$('.card').css('z-index','1');
$( this ).css('z-index','1000');
});
$('.card').on('click', function(event) {
if($(this).hasClass("dragging")) return;
if($(this).hasClass("rotate0"))
$(this).removeClass("rotate0").addClass("rotate90");
else
if($(this).hasClass("rotate90"))
$(this).removeClass("rotate90").addClass("rotate180");
else
if($(this).hasClass("rotate180"))
$(this).removeClass("rotate180").addClass("rotate270");
else
if($(this).hasClass("rotate270"))
$(this).removeClass("rotate270").addClass("rotate0");
});
</script>
</html>