collideJudge: function(obj, x, y, items){
var gainItem = items instanceof Array;
return !this.eachStageObject(function(f){
- if(!f.isPhantom && f !== obj)
+ if(f !== obj)
{
if(obj.isCollided(f, x, y))
{
{
for(var titem in items)
{
+
if(titem == f) return true;
}
items.push(f);
obj.origin.x = ex;
obj.origin.y = ey;
- for(var item in gotItems)
+ for(var i in gotItems)
{
+ var item = gotItems[i];
if(item.itemAttacked)
{
//\83A\83C\83e\83\80\82ð\8eæ\93¾\82µ\82½\82Æ\82«\82Ì\8f\88\97\9d\82ð\8cÄ\82Ô(\92N\82ª\8eæ\93¾\82µ\82½\82©\81A\8eæ\93¾\82µ\82½\93z\82Ì\8c»\8dÝ\88Ê\92u\82ð\93n\82·\81j
--- /dev/null
+var ItemClass = function(ownerStage, args)
+{
+ //args[imgName]
+ ItemClass.base.apply(this, arguments);
+ this.isPhantom = true;
+
+}.extend(StageObject, {
+ draw: function(x, y){
+
+ },
+
+ //\83u\83\8d\83b\83N\82Ì\93\96\82½\82è\94»\92è\97Ì\88æ\82ð\95Ï\8dX\82·\82é\82½\82ß\82É\82Í\82±\82Ì\8aÖ\90\94\82ð\83I\81[\83o\81[\83\89\83C\83h\82·\82é
+ //\88ø\90\94\82É\82Í\81A\93\96\82½\82è\82ð\8am\82©\82ß\82é\97v\91f\82Ì\93\96\82½\82è\94»\92è\97Ì\88æ\82Ì 1:\8d¶\8fã\8b÷ 2: \89E\89º\8b÷\82Ì\8dÀ\95W\82ð\8ew\92è
+ //MovableStageObject.isCollided\82©\82ç\8cÄ\82Î\82ê\82é
+ isCollided: function(x1, y1, x2, y2){
+ return x2 >= this.origin.x && x1 < this.origin.x + this.size.x && y2 >= this.origin.y && y1 < this.origin.y + this.size.y;
+ },
+
+ itemAttacked : function(obj, obj_x, obj_y)
+ {
+ //\82±\82Ì\8f\88\97\9d\82ð\8eq\83N\83\89\83X\82Å\8fã\8f\91\82«\82µ\82Ä\83A\83C\83e\83\80\82Ì\93®\8dì\82ð\92è\8b`\82·\82é
+ //obj : \82±\82Ì\83A\83C\83e\83\80\82É\90G\82Á\82½\90l(MainCharacter\82È\82Ç)
+ //obj_x : obj\82Ì\90G\82ê\82½\92¼\8cã\82Ìx\8dÀ\95W
+ }
+});
\ No newline at end of file
--- /dev/null
+var MessageItemClass = function(ownerStage, args)
+{
+ //args[imgName]
+ MessageItemClass.base.apply(this, arguments);
+
+ var img = document.createElement('img');
+ img.src = "images/1234.png"; //\89æ\91\9c\82Í\89¼
+ this.image = img;
+ this.message = args[0];
+
+}.extend(ItemClass, {
+ draw: function(x, y){
+ this.ownerStage.mainContext.globalAlpha = this.opacity;
+ this.ownerStage.mainContext.drawImage(this.image, x, y, 32, 32);
+ this.ownerStage.mainContext.globalAlpha = 1.0;
+ },
+
+ itemAttacked : function(obj, obj_x, obj_y)
+ {
+ console.log(obj);
+ if(obj instanceof MainCharacterClass) //\8c»\8dÝ\91\80\8dì\92\86\82Ì\83L\83\83\83\89\82Å\82 \82é
+ {
+ //\8c\99\82È\97\\8a´... \83u\83\89\83N\83\89\94\93®
+ window.alert(this.message);
+ }
+ }
+});
isCollided : function(obj, x, y)
{
//MovableStageObject\82ª(x, y)\82Ì\82Æ\82«\91\8a\8eè\82Ìobj\82Æ\8fÕ\93Ë\82·\82é\82©\94»\92è
- if(obj instanceof BlockClass)
+ if(obj instanceof BlockClass || obj instanceof ItemClass)
{
return obj.isCollided(x + this.collisionMarginLeft, y + this.collisionMarginTop, x + this.size.x - this.collisionMarginRight, y + this.size.y - this.collisionMarginBottom);
}
document.write("<script type='text/javascript' src='corelib/classes/HorizonalScrollStageClass.js'></script>");
document.write("<script type='text/javascript' src='corelib/classes/PCDSLStageClass.js'></script>");
document.write("<script type='text/javascript' src='corelib/classes/StageObjectClass.js'></script>");
+document.write("<script type='text/javascript' src='corelib/classes/ItemClass.js'></script>");
+document.write("<script type='text/javascript' src='corelib/classes/MessageItemClass.js'></script>");
document.write("<script type='text/javascript' src='corelib/classes/BlockClass.js'></script>");
document.write("<script type='text/javascript' src='corelib/classes/SlopeBlockClass.js'></script>");
document.write("<script type='text/javascript' src='corelib/classes/MovableStageObjectClass.js'></script>");